you would be creating a problem rather than a solution in the long run. Such data could be stored on ipfs anchored to the actual chain
Could you elaborate your answer a little bit more please? I can't follow this statement either.. Thanks for the answers, so the idea would have a web platform that will be always keep on sync with the blockchain, so this problem would be solved, since the user has no client and he doesn't needs to update it.
This would work. But if this web platform is only running on your server (without being open source), then what is the reason to use a blockchain? You would create a centralised platform utilizing an inefficient data structure. If you want to build a centralised platform, use another form of storage. A simple databse would be way more efficient. If you want to build a decentralised platform, other people need the ability to connect to your network (without relying on your server/web application).
|
|
|
If new altcoin is able to implement this feature, so everyone can set a limit to spend X ALT in the X time etc. ?
Theoretically, yes. This can be done. Programmatically is it possible in the blockchain technology ? In the way that each one can set that parameters in decentralized way ?
'Blockchain' is just a data structure. But to give you a short anwser: Yes, it is possible to be implemented with an underlying blockchain in a decentralised way. Is there any altcoin based on bitcoin core implemented this feature ?
Altcoins(here: BTC forks) are based on bitcoin, not 'bitcoin core'. Bitcoin core is just a client(full node / wallet) to access the bitcoin network. But, no. I am not aware of an altcoin providing such a 'feature'. What would be the sense of such a feature? What problem does it solve?
|
|
|
Would that be a good fit for this problem?
Since you are working on an immutable data structure the only way of accomplishing such an 'update' would be to reference to the old block/tx/message. You approach should just work fine. That would have been my first approach too. You just have to keep in mind that you still need verification (only poster of the first message can 'update' this message). But note that the displaying of those messages (especially the updated messages) is done client-side. It is definetely possible to see all old messages. The client has to be set up correctly and needs to have the blockchain synced and verified to display all messages/posts correctly. Lets pretend the following: Alice does post some text at block X. Alice does edit this post at block X+10. If Bob opens his clients and syncs, the moment he reaches block X, he will see the first post by Alice. This will be the only message bob will see until he has synced up to block X+10. Short answer: Yes, i think so.
|
|
|
My idea is checking that daemon actually alive, and working stable: synchronise with last block, respond for RPC commands and etc.
To check whether your daemon is alive, does receive blocks, verifies them, etc... just look at the debug.log (standard directory on linux: ~/.bitcoin). You will see relevant information regarding block count, transaction, .. , pebwindkraft's solution should be working for you. If you want to check if RPC commands are working correctly (which they always should if your daemon is not corrupted), the only possibility i might think of is to code a small script which does call the RPC commands regularly.
|
|
|
So bitcoin's API, commands, daemon feature is same at all other alt-coins?
Generally, no. Some forked coins may have the same API, but doesn't have to. Just google "your_coins_name developer api" to find the correct API for your coin. And eth ERC20 token does not have any source github, API, commands, daemon, right?
ERC20 tokens are just coded contracts. You may found them on github. This depends on the developer. Regarding commands and deamon, look here. You don't need to run a daemon for an ERC20 token. They run ontop of the ethereum network. You might run an ethereum daemon if necessary. ERC20 is a protocol running on top of Ethereum network..
ERC20 describes rather a standard for tokens, than a protocol.
|
|
|
This mostly sounds like a network issue (probably on myceliums's server side). This should be resolved within a day or two. If you don't have time to (or don't want to) wait, you can always import your mnemonic seed into any BIP39 compatible wallet (e.g. electrum [1]). The derivation path mycelium uses is: m/44'/0'/X'/Y/Z, where: X = Number of your account (i.e. for the 1st created 'account' inside mycelium: 0; for the 2nd: 1, ...) Y = 0 for receiving addresses; 1 for change addresses Z = index of address (0 for first addres, 1 for second addres, ...). So in electrum you have to enter: m/44'/0'/0'/ for your 'first account', m/44'/0'/1'/ for your second account, ... [1] https://electrum.org/#home
|
|
|
Is there no way to do it directly without the need for a bash script?
walletnotify and blocknotify do run a script if a specific event happens. You don't have to use a bash script. Python/PHP would work too, or any other scripting language. But a script is needed. Also in regards to the path, is it starting from the folder where bitcoin.conf is located? or the root of the system? I suppose i should create a home folder where the bitcoin.conf is?
If you specify the path like directory1/test.sh then it is a relative path (from where the executable is being started started (e.g. bitcoind folder)). If you specify the path like /directory1/test.sh then it is an absolute path (from root folder). & to access the $1 in argv, do i simply do $transactionID = $argv[$1]; ?
IIRC you just have to use $transactionID = $1. But i am not completely sure about that. It may also be $argv[1] or $argv[0](less probable, since this should be the command 'itself').
|
|
|
I'm running a Symfony4 (PHP) project which makes use of a routing system.
Routing system? Mind explaining what you mean? I want to use walletnotify in the following way, but i want to make sure that it's right before testing: bitcoin.conf: walletnotify=curl http://127.0.0.1:8000/wallet/notify/%s~snip~ how would i use the argv function in this case and would it work? You have to specify the path to your script. E.g. : walletnotify = /home/path/to/your/script.sh %s
And inside your script.sh you can have the following: #!/bin/sh curl http://127.0.0.1:8000/wallet/notify/$1
%s (transaction ID) will be passed to your script and can be used/accessed via $1 (argv). Note that walletnotify is called when: 1) You receive a transaction 2) You send a transaction 3) A (receiving) transaction gets the first confirmation If you want to check for a further status (2+ confirmations), you have to use blocknotify instead of walletnotify.
|
|
|
You have to describe more detailed what exactly you want to achieve regarding privacy.
With core it won't be possible to see which transaction you have broadcasted. If you broadcast a TX with core, it is just one between thousands (which you relay to other nodes). The receipent (1 hop away) can't tell for sure that you have broadcasted the TX. It could have been broadcasted by anyone, relayed by your node.
With electrum an attacker might be able (under some circumstances) to gather the IP of the broadcasting wallet (and therefore also your location; assuming no VPN/proxy is used).
You IP, however, will be visible to all nodes connected to your node. This is necessary. Pretend you want to send a mail via snail-mail, but don't know the address. This doesn't work. The only way to hide your IP is via using a VPN service (which will relay the traffic via their server to you; The IP of the VPN server will be visible to the network).
For a more detailed anwser, ask more detailed.
|
|
|
Thanks to all who help me set this up I finally update my firmwares and Mcu and have also downloaded some applications but I notice that there is a lag or the coin applications are not opening at all, I insert my Nano S and open the coin application but nothing is happening.
Generally you have to follow these steps: - Open the wallet client on your PC (any client which supports hardware wallets; this can be the ledger chrome applications, electrum, altcoin-wallets with HW support, ..).
- Then connect and unlock (enter pin) your nano s
- Open the corresponding application (on your nano s)
Afterwards, your wallet (software on your PC) should show that it has found the nano s. The exact process depends on the wallet you want to open. For BTC, follow HCP's description.
|
|
|
Wait for the problem and a developers will find a solution in time Why decentalized system should depend on some developers? Any project (regardless whether open source or closed source) does rely on developer to enhance the project. An open source project (e.g. bitcoin) does also rely on developer. A lot of time has passed since the first version got released. A lot of good tweaks have been done Where do you think do all of these improvements (e.g. segwit) come from? From independent developer. There are even more enhancements coming (LN, Schnorr signatures, Coinjoin, ...). All from independend developer.
|
|
|
I use bitcore.io library:
~snip~
but still using m/49(not m/44) I get the adresses which beginning from "1".(but I need "3"). Where is my fault?
According to the official documentary of the bitcore.io libary ( https://bitcore.io/api/lib/address#new_Address_new) the only way to create a nested P2SH address is to call new Address(data, network, [type]). The function hdPrivateKey.derive(arg, hardened) seems to not be supporting nested P2SH. ( https://bitcore.io/api/lib/hd-keys#HDPrivateKey+derive). I might just not have found the correct function. But it seems that this is currently not possible with this libary Is there a specific reason you want to use javascript? This python libary does give you the ability to derive the desired P2SH address from your mnemonic seed.
|
|
|
What exactly did you do? Did you follow Lucius' post step-by-step? Try the following (in this specific order): - Close any ledger applicatoin running on your PC
- Disconnect your nano s
- Open the device manager (Windows-Logo -> 'device manager')
- Plug your nano s in
- Look at the device manager for a new device which just appeared (you may have to click 'reload' at the top bar). It should have a yellow exclamation mark
- Remove the device from the device manager
- Open ledger manager
- Connect your nano s / start the update again
|
|
|
in addition: Proof of Work (POW) is "Mining" using hardwares like Processors, GPUs, ASICs or even HDD/RAM.
You can't mine with a HDD. Neither with RAM only. A HDD does store data. It does NOT calculate anything. Particularly it is not possible to calculate hashes on an HDD. The same does apply to RAM. Thats 'just' memory. Then you should read about "Proof-of-Capacity" consensus method, even though i think this idea don't work well. Proof of Capacity (PoC) is not the same as Proof of Work (PoW). OP was mentioning PoW vs. PoS. But this still doesn't mean that you can 'mine' with your HD. It is more like staking your storage (e.g. lending to others). You are not actively using the space to calculate something. Thats basically mining through 'staking storage'. Just like you can mine coin X by staking coin X for a timepsan of Y.
|
|
|
in addition: Proof of Work (POW) is "Mining" using hardwares like Processors, GPUs, ASICs or even HDD/RAM.
You can't mine with a HDD. Neither with RAM only. A HDD does store data. It does NOT calculate anything. Particularly it is not possible to calculate hashes on an HDD. The same does apply to RAM. Thats 'just' memory. Every POS coins differ a lot in picking/distributing the reward. ~snip~ Some are simple higher share higher chance which can easily leads to centralization.
This CAN lead to more centralisation than POW, but doesn't have to. It doesn't really matter whether you stake an insane amount of money to get a big % of the total hashrate or just buy an insane amount of ASICS (for an insane amount of money) to gain the same big % of the hashrate.
|
|
|
Could you please explain the notion of token or point to me some articles to read.
There are several meanings of 'token': - The term token is used in a very general sense to describe any digital asset (where Bitcoin is a token and Ether is a token).
- The term token is used to describe a unit of value (I have X Bitcoin tokens). Here it refers to the fact that cryptocurrencies, like the U.S. dollar, are value tokens / currency tokens / token money (they represent value, but aren’t themselves of any inherent value)
- Meanwhile, sometimes when people say “token” they are specifically referring to digital assets that are built on another cryptocurrency’s platform like Ethereum’s ERC-20 tokens. The native token on the Ethereum platform is Ether, KIN for example is a ERC-20 token created from the KIN ICO. Both Ether and KIN are cryptocurrencies (AKA tokens) on the Ethereum network, but one might refer to KIN as “a token” to differentiate it from cryptocurrencies that use their own platform / network / blockchain.
- Token can also be used to describe “utility tokens” which are tokens that can be used for specific functions in specific systems (such as a token that lets you access a certain amount of cloud storage).
Source: https://cryptocurrencyfacts.com/what-is-a-cryptocurrency-token/ (<-- Does explain tokens very well, might be worth a read for you) In most cases 'token' refers to an ERC-20 token (built on top of ethereum) following the ERC-20 standard. Is it some minimal atomic unit of available cryptocurrency with some unique id.
No. The smallest fraction of a bitcoin is a satoshi. 1 satoshi = 0.00000001 BTC. For example in bitcoin there can be fractions of bitcon spreaded among UTXOs. Are they tokens?
No. These are simple UTXO's. How are they are emitted? What does it mean - when "some number of tokens has been released"
This most probably means that a foundation/company/developer/founder of token X has released tokens. This includes any possible distribution (e.g. aidrop, token sale, ..). This means they have been brought into circulation.
|
|
|
What kind of monitoring are you thinking about?
You can either connect via an RPC port and code a small script which polls the information you want to check. This includes network information (e.g. connected peers, new blocks, transactions, ...).
Or you can monitor the output of the log file. Either check the debug.log from bitcoin core (standard directory: ~/.bitcoin) or the system log (/var/log/syslog).
This mainly depends on what exactly you want to monitor.
|
|
|
What you should do is to disconnect Ledger and close Ledger Manager. Then go to Control Panel\System and Security\System > Device manager and under Human Interface Devices - USB Input Device check for any device with yellow mark/click on remove.Then open Ledger Manager and connect Ledger.
This should fix it. Just a small correction: The nano s has to be plugged in to appear in the device manager. Afterwards the device will be shown with the yellow exclamation mark. This bug does occasionally occur on windows devices.
|
|
|
|