I'm curious though: I'd love to know what this data is being used for. There must be more than a thousand downloads per month now.
Yes, me too I'm genuinely curious about this.
|
|
|
Thanks you quoting my service :-)
|
|
|
Thanks you quoting me! The tool is still working great FYI, and https://balances.syndevio.com/ is still maintained with it too, for whoever might be insterested :-)
|
|
|
Hello, I would rather personally use a 3rd party key/value database in order to manipulate small data set like this, like redis. A way to do it would be: First, import database (& go take a coffee, as it will take a few minutes): $ awk -F ';' '{print "SET " $1 " " $2 }' < balances-bitcoin-20190617-0000-foryjL2u | redis-cli >/dev/null Check database import by cheching number of keys: $ wc -l ~mycroft/balances-bitcoin-20190617-0000-foryjL2u 25330187 /home/mycroft/balances-bitcoin-20190617-0000-foryjL2u
$ redis-cli dbsize (integer) 25330187
Then, retrieve all wanted balances & build a k/v export set (where "randomset" is the list of addresses searched in database): $ awk '{print "GET " $1 }' < randomset | redis-cli | tr -d \" > randomset.balances
$ paste randomset randomset.balances 1FMbcnYvvccZ6hR324cFRpn1QX9TCkqtAe 800000001092 1C7u4Zqu6ZZRsiKsFMYVDvNLfCwsGrbeTq 800000001092 155fzsEBHy9Ri2bMQ8uuuR3tv1YzcDywd4 191404456773 1BzK87zuqidZn489Wb2oLSktrjKrX7TLKe 200000174647 16BBBjvAArL3zdb1Fh1isr2w2hX7K1K4Gm 800000001092
Not found value would show (nil), which would make easy to know they are not appearing in database.
|
|
|
You left out you are selling this info. Source code I wrote for all this, with instruction to be able to reproduce, is opensource and links are on this page or within this thread. I'm not selling the information, I'm selling the hosting, the bandwidth & cpu processing. Regards.
|
|
|
can someone post a link to the new list?
There isn't any. You could build it yourself though. There is: I compute a bunch of them everyday, and make them available on https://balances.syndevio.com/Regards
|
|
|
I'm sorry, but I'm too much busy to add all coins in the world, unfortunately ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) I still have bugs I can't reproduce to fix for bitcoin core so...
|
|
|
Could you make script for autorun bitcoin daemon after start VPS?
You can probably just use cron for this... it has settings that allow you to run commands after startup. The best is still to make use of the provided bitcoind.service file for systemd. Most likely it is already bundled in the ubuntu's bitcoind package. As root, the following should work: # cp bitcoind.service /lib/systemd/system/bitcoind.service # systemctl enable bitcoind # systemctl start bitcoind # systemctl status bitcoind
It will register it in systemd & making it as a service to start at boot. There is no need of a third party script.
|
|
|
I tried installing bitcoin core on my raspberry pi a while back and got a berkeleyDB error when running ./configure. The exact error is this: configure: error: Found Berkeley DB other than 4.8, required for portable wallets (--with-incompatible-bdb to ignore or --disable-wallet to disable wallet functionality)
I ran the installation of all of the dependencies (including libdb-dev, libdb++-dev) and still can't work out where the error is coming from? I know I need the version of 4.8 of berkeley db, just can't work out how to install it, I noticed in the realease notes that it says there's something different that has to be done for ubuntu and it doesn't work on raspbian. I also found this so I'm working through some of those suggestions but quite a few are throwing other errors. Use --with-incompatible-bdb as advised on ./configure. It will work just fine.
|
|
|
Did you correctly stopped bitcoind before copying the state directory ?
Sure. Here is the script that stops my bitcoind. Is this correct stopping? [suser@power ~]$ cat /home/suser/bitcoin-core/.bitcoin/stop.sh #!/bin/sh if [ -f /home/suser/bitcoin-core/.bitcoin1/bitcoind.pid ]; then kill $(cat /home/suser/bitcoin-core/.bitcoin/bitcoind.pid) fi I stopped it before copying. I am using bitcoin core 0.16.0 You must take care of waiting a few seconds before copying: bitcoind takes a few seconds to stop & correctly close the database. If you send the kill signal then directly copy the directory, it is possible the database is still marked as open and the leveldb library will refuse to open it, leading to the exception you're hitting. Please add a "sleep 15" after your kill, and check your bitcoind is really down. If that does not do it, the best I can do is to show the leveldb error message instead of the exception; It would give you an hint. I'll take a look about this tonight.
|
|
|
And this: [xuser@power chainstate]$ cat /tmp/cs.errors chainstate: chainstate.cc:82: int main(int, char**): Assertion `status.ok()' failed. What am I doing wrong? Thank you for your help! Likely, the DB can't be opened for some reason. Did you correctly follow the required steps prior using this program ? I hope so. I have re-installed it two times from the scratch just now. Re-installed dependencies and even installed it under different user - same result. Can you please take a look at the install log? Here is it: https://pastebin.com/z7h6sdmDAnything suspicious? What additional info can I provide you with to identify/fix the problem? Thank you very much! Did you correctly stopped bitcoind before copying the state directory ?
|
|
|
And this: [xuser@power chainstate]$ cat /tmp/cs.errors chainstate: chainstate.cc:82: int main(int, char**): Assertion `status.ok()' failed. What am I doing wrong? Thank you for your help! Likely, the DB can't be opened for some reason. Did you correctly follow the required steps prior using this program ?
|
|
|
I'm really no have any knowledge in regards with any technicals stuffs including setting up nodes right now i'm having trouble in regards with this since I want to setup a masternode but I don't have prior knowledge about it, Is it okay to ask here about technical stuffs?
here's the questions: 1. How can i set up masternodes (I tried to do a research and watching online but I'm still confused)
In bitcoin, there is no such thing as "masternode". There are "masternode" for some other coins, and you should refer to their documentation to know more about. 2. Do I need to have a VPS in order to create a node?
No, any recent computer (< 10 years old) will do it, as long as it is connected to internet and you launch the Bitcoin daemon or wallet.
|
|
|
MAX_MONEY is bitcoin's source code is not the limit of the number of coin you can mine in the chain. This is controlled by a set of other parameters & algorithm defined in the protocol (difficulty, rewards through time, etc). MAX_MONEY is used for some controls/checks (do a quick "grep -r MAX_MONEY src", you'll be able to see by yourself). It is even written in source code (src/amount.h): /** No amount larger than this (in satoshi) is valid. * * Note that this constant is *not* the total money supply, which in Bitcoin * currently happens to be less than 21,000,000 BTC for various reasons, but * rather a sanity check. As this sanity check is used by consensus-critical * validation code, the exact value of the MAX_MONEY constant is consensus * critical; in unusual circumstances like a(nother) overflow bug that allowed * for the creation of coins out of thin air modification could lead to a fork. * */ static const CAmount MAX_MONEY = 21000000 * COIN; Most cheap altcoins developers would think that it is sufficient to change this number, but in fact, this is whole wrong. Controlling the whole supply of a Bitcoin fork protocol is not as easy as changing a simple number.
|
|
|
You want to send a transaction with a null data output in it, as documented at https://bitcoin.org/en/developer-guide#null-dataCurrently, the bitcoin protocol allows a length 83 bytes, including the mandatory OP_RETURN in it. AFAIK, you can't do that within the GUI (well, you can using the debug window), and you just have to use the use the createrawtransaction/signrawtransaction/sendrawtransaction to achieve that. First, make sure you have unspent UTXO to send your coins. I'll be using the testnet to make in my example: $ alias btc-test="bitcoin-cli -testnet" $ btc-test listunspent [ { "txid": "177057101201ebf8a179f88b4062b5811c75e670d9771fb6d6483c62440b7106", "vout": 0, "address": "2NAE4ATn2J39o6RCz5eLcC28s8q7uGwsjxM", "account": "", "redeemScript": "0014b4fb6c09924a8345888378b44c5a267536b0da8e", "scriptPubKey": "a914ba41857257b590385a85a1d52ac8661d998fb04887", "amount": 0.16250000, "confirmations": 1, "spendable": true, "solvable": true, "safe": true } ]
Then, you create your new raw transaction, using this unspent output. In this transaction, I'll send the coins back to the same address (minus fees - 0.0005; I'm freaky generous on this one!), and send the "hello subezi"-md5sum hashed message: $ echo "hello subezi" | md5sum 66901913e0cdea467afd40ef844823df
$ btc-test createrawtransaction "[{\"txid\":\"177057101201ebf8a179f88b4062b5811c75e670d9771fb6d6483c62440b7106\",\"vout\":0}]" "{\"2NAE4ATn2J39o6RCz5eLcC28s8q7uGwsjxM\":0.162,\"data\":\"66901913e0cdea467afd40ef844823df\"}" 020000000106710b44623c48d6b61f77d970e6751c81b562408bf879a1f8eb0112105770170000000000ffffffff024031f7000000000017a914ba41857257b590385a85a1d52ac8661d998fb048870000000000000000126a1066901913e0cdea467afd40ef844823df00000000
You can check with "decoderawtransaction" the transaction back: $ TX=020000000106710b44623c48d6b61f77d970e6751c81b562408bf879a1f8eb0112105770170000000000ffffffff024031f7000000000017a914ba41857257b590385a85a1d52ac8661d998fb048870000000000000000126a1066901913e0cdea467afd40ef844823df00000000 $ btc-test decoderawtransaction $TX { "txid": "5114489a3f2fb3523d1fb45abfaa10cd9d59217971ad6ec82ca9042eee187d8d", "hash": "5114489a3f2fb3523d1fb45abfaa10cd9d59217971ad6ec82ca9042eee187d8d", "version": 2, "size": 110, "vsize": 110, "locktime": 0, "vin": [ { "txid": "177057101201ebf8a179f88b4062b5811c75e670d9771fb6d6483c62440b7106", "vout": 0, "scriptSig": { "asm": "", "hex": "" }, "sequence": 4294967295 } ], "vout": [ { "value": 0.16200000, "n": 0, "scriptPubKey": { "asm": "OP_HASH160 ba41857257b590385a85a1d52ac8661d998fb048 OP_EQUAL", "hex": "a914ba41857257b590385a85a1d52ac8661d998fb04887", "reqSigs": 1, "type": "scripthash", "addresses": [ "2NAE4ATn2J39o6RCz5eLcC28s8q7uGwsjxM" ] } }, { "value": 0.00000000, "n": 1, "scriptPubKey": { "asm": "OP_RETURN 66901913e0cdea467afd40ef844823df", "hex": "6a1066901913e0cdea467afd40ef844823df", "type": "nulldata" } } ] }
Next step is to sign the transaction, using signrawtransaction: $ btc-test signrawtransaction $TX { "hex": "0200000000010106710b44623c48d6b61f77d970e6751c81b562408bf879a1f8eb0112105770170000000017160014b4fb6c09924a8345888378b44c5a267536b0da8effffffff024031f7000000000017a914ba41857257b590385a85a1d52ac8661d998fb048870000000000000000126a1066901913e0cdea467afd40ef844823df02483045022100c31561e63c0bc0f023dd05008b7c25e48079ae36bc6942b971eb49080ca605f502206cf6743c986b0d1e2507deb9147728e006a895a2b6bbe477bd61eacb54574305012103029926e88dabdcdc6e24702d4f4b6209438166d23200f604b3604cdfa1aa06ac00000000", "complete": true }
And finally, last step, to send this signed transaction to the network: $ export SIGNED=0200000000010106710b44623c48d6b61f77d970e6751c81b562408bf879a1f8eb0112105770170000000017160014b4fb6c09924a8345888378b44c5a267536b0da8effffffff024031f7000000000017a914ba41857257b590385a85a1d52ac8661d998fb048870000000000000000126a1066901913e0cdea467afd40ef844823df02483045022100c31561e63c0bc0f023dd05008b7c25e48079ae36bc6942b971eb49080ca605f502206cf6743c986b0d1e2507deb9147728e006a895a2b6bbe477bd61eacb54574305012103029926e88dabdcdc6e24702d4f4b6209438166d23200f604b3604cdfa1aa06ac00000000
$ btc-test sendrawtransaction $SIGNED 259fbbba743bb54a116b114b1faed137f9f005e478c80759d446c4f03e06824a And you can check that this transaction has stored in the blockchain your initial message, using any good block explorer, simply like this https://testnet.blockchain.info/tx/259fbbba743bb54a116b114b1faed137f9f005e478c80759d446c4f03e06824a?show_adv=true$ curl -s https://testnet.blockchain.info/rawtx/259fbbba743bb54a116b114b1faed137f9f005e478c80759d446c4f03e06824a|grep 66901913e0cdea467afd40ef844823df "script":"6a1066901913e0cdea467afd40ef844823df"
Have fun sending custom data in the blockchain!
|
|
|
Could anyone update and share for free BTC actual ballances list, please?
Someone was kindly enough to unlock https://balances.syndevio.com/ for today! Feel free to quick download the balance file.
|
|
|
How Should I proceed.
To do what, exactly ? What is your goal ? This is the most important question right there. I have gone through the book "Mastering Bitcoin" and I am not able to completely grasp it. I just need a break from reading and need to do something practical. Is " https://github.com/bitcoin/bitcoin/" is the original copy? How should I read the source code? Do I need to install some specific program /compilers for it The Bitcoin Core source code is hard to read. As you're asking if you need some kind of compilers or anything to build it, I assume you are not a skilled c++ software developer (which is not wrong!), but it will be even harder for you to read. You should not try this way. If you want to understand how bitcoin works, installed the Bitcoin Core (wallet) client already compiled (on https://bitcoin.org/), and try it using the Testnet. After you got a grasp on how the wallet works, I would advise you to take a look to the RPC commands (accessible using bitcoin-cli). It will allow you to use the wallet, but using bitcoin core features even closer to the protocol. If you are a software developer, you can try to build a simple explorer, using those RPC commands, or even a blockchain parser. It is a nice way to understand Bitcoin even deeper, and not much an hard task. Once you've done all that, you'll be mostly ready to understand the Bitcoin Core's C++ code! :-)
|
|
|
Not a crypto expert right there, but it seems your signature is considered invalid in that case: ./src/bitcoin-cli -testnet -datadir=d0 sendrawtransaction 01000000011dcfb1dbfdb10e845c612dcbdfa59003f515f0d34eedaa86be1ba0d3112d9843010000006b48304502207e31d081b959a9737752206fda158c25f70ae98ff79fc77e000e7973bcffc973022100ee0f679280cd49d1f2c8acdf736616fde2b6ff97847854d85ea7f318f1d0f5dd012102e09ba950a97153ca600874160aeff2180503b09c48eaf1b6e9a996e1ac53878effffffff0210668d06000000001976a9147717190b2ee8d59e56331c7cfe05dde0d5cd8a9c88ac50c30000000000001976a914c9f81199e2995d4422c8c41fec4efa04347e66e388ac00000000 error code: -26 error message: non-mandatory-script-verify-flag (Non-canonical signature: S value is unnecessarily high) (code 64) With some code reading, I found out that your value is too big to fit the signature, and is simply rejected. This is happening when calling in the secp256k1_ecdsa_signature_normalize (which calls the secp256k1_scalar_is_high function in the secp256k1 library. I suggest you to take a look at those. Bitcoin will reject unnormalized signatures in order to prevent spam.
|
|
|
|