60

I'm not sure if bitcoind stop still works as RPC with newer releases, since somewhere in help sections it says RPC funcionality removed from bitcoind. Try bitcoin-cli stop.


37

The input of every transaction refers to an output of a prior transaction. An input can't be defined by only the transaction hash. A transaction consists of 1 or more outputs if you only specify the transaction hash there is no way to know which output is being spent.** Since these types of questions often come from a larger misunderstanding of how the ...


36

-reindex: wipes the chainstate (the UTXO set) wipes the block index (the database with information about which block is where on disk) rebuilds the block index (by going over all blk*.dat files, and finding things in it that look like blocks) rebuilds the chainstate (redoing all validation for blocks) based on the blocks now in the index -reindex-...


32

By setting the -prune option. -prune= Reduce storage requirements by enabling pruning (deleting) of old blocks. This allows the pruneblockchain RPC to be called to delete specific blocks, and enables automatic pruning of old blocks if a target size in MiB is provided. This mode is incompatible with -txindex and ...


29

First you must configure your bitcoin.conf file for JSON-RPC rpcallowip=127.0.0.1 rpcuser=yourusername rpcpassword=reallystrongpasswordthatsnothis rpcport=7788 walletnotify=/home/scripts/transaction.sh %s Where transaction.sh is some bash program. One approach is to have it make an http request to some process to notify you of the deposit. An example: #!/...


26

Yes. You can ignore this. This means that some miners have mined (still compatible) blocks with a version number unknown to Bitcoin Core. Generally this indicates that some miners have mined blocks that signal non Bitcoin Core compatible soft- or hard-forks. Very likely a 2MB hardfork after BIP109 implemented by Bitcoin Classic.


25

The Bitcoin.org client will try to communicate to other nodes via port 8333 and those communications follow the Bitcoin protocol. If an explicit connection is given (IP address and port) the port setting can be overridden to use any port. The bitcoin.org client can be configured to accept JSON-RPC communications, and when that is enabled will, by default, ...


24

By default, what is maintained by the 0.8 blockchain engine is: All blocks A database with all block headers, and the positions on disk for each block A database that represents all unspent transaction outputs (UTXOs), indexed by txid, at the current tip of the block chain Undo files that allow rewinding the effects of blocks on this set of UTXOs. Nothing ...


24

EDIT (2014-09-05): I have updated this answer to the most recent information. The previous answer was outdated in regards to the cons. It was accurate as of version 0.3.0-alpha, however btcd is now in beta, up to version 0.8.0-beta, and nearly all of the previous cons have since been addressed. Also, I've updated all references to bitcoind to Bitcoin Core ...


23

ZeroMQ is a publisher / subscriber messaging system. In the case of Bitcoin Core it is a socket which other applications can connect to and get notifications of new events in real time, without having to repeatedly ask the daemon if there are any new events. ZMQ support is useful for any systems interfacing with the network like miners and wallets, which can ...


23

"TL;DR: Bitcoin mining is virtually immune to someone attacking it with a supercomputer, because the mining market is already flooded with supercomputers custom tailored to the job at the hardware level." (via Cort Ammon in comments) First of all, the difficulty reset happens after 2016 blocks. That's only after about 14 days if the hashrate is stable. When ...


23

This is not a thorough schooling on Tor and only shows how to configure it to work together with Bitcoin Core. Bitcoin Core includes Tor integration When Tor is correctly setup on your system, Bitcoin Core automatically identifies Tor and creates an anonymous service. Little configuration is required to be 'off the grid' and, just a tiny bit more to be ...


22

To be strict, OP asked to send all coins, which @mschuett didn't answer. The key thing to do this is the last optional bool argument of the sendtoaddress RPC command called subtractfeefromamount. The way to use it is: bitcoin-cli walletpassphrase <passphrase> <timeoutInSeconds> bitcoin-cli sendtoaddress <bitcoinaddress> `bitcoin-cli ...


21

Cookie based authentication is used when no rpc password is provided. The 0.12 release of Bitcoin Core had the following to say about it: When no -rpcpassword is specified, the daemon now uses a special ‘cookie’ file for authentication. This file is generated with random content when the daemon starts, and deleted when it exits. Its contents are ...


20

I did the following command on Ubuntu and it worked. sudo apt-get install libdb++-dev


20

Bitcoin by default will not make more than 8 outgoing connections, and -maxconnections only controls how many incoming connections you allow. Feel free to set this higher, but it will take time before others connect to you in large numbers. Please don't change this, as there is no need. Connectable peers on the network are a scarce resource, and essential ...


20

The given answers don't answer the question. Even though it might not makes sense to achieve a thousand connections, here's how to do that on Debian. You want to make some slightly changes in the code and recompile bitcoind: Get required packages for compiling: $ aptitude install git make build-essential libssl-dev libboost-all-dev libdb-dev libdb++-dev ...


20

You can either run bitcoin-qt or bitcoind, not both at the same time (the Qt part is not just a frontend on top of the RPC code, it uses the core directly). You can however run Bitcoin-Qt with the -server command-line switch, in which case it will also expose an RPC service (essentially functioning like bitcoind in addition to the GUI interface). The RPC ...


19

It gets it from the keypool, which has 100 pre-generated addresses by default. The next time you enter your passphrase, it will refill the pool with new addresses. Here's an example that shows the pool running out, and refilling when the password is supplied. The following commands were performed by a trained professional. Please don't try this at home (...


19

I use a python script that grabs http://blockchain.info/q/getblockcount and compares it to the output of bitcoind getblockcount. As others have said, there is no absolute way of telling if your blockchain is up to date. Anyway, here is my script: import httplib2 from bitcoinrpc.authproxy import AuthServiceProxy access = AuthServiceProxy('######...


18

Since Bitcoin-Core 0.11.0 you can prune (trim) the blockchain in Bitcoin-Qt. But not from the UI. You need to add prune=550 to your bitcoin.conf file and restart Bitcoin-Qt. Explanation: -prune=<target in MiB> will tell bitcoin-core to remove blocks which are older than oldest block that can be kept with a chainsize (sum of block-sizes) of <target&...


16

EDIT: Caveat emptor on Ubuntu distributions from 14.10 and forward - init was chosen over upstart and is being phased in the future. I don't know when that will be done nor what impact it will have on upstart scripts. Extract from the page RentFree refers to; note that it assumes that you have created a user called bitcoinuser for the sake of security: For ...


16

There are more details in the release notes. To enable block pruning set prune=<N> on the command line or in bitcoin.conf, where N is the number of MiB to allot for raw block & undo data. A value of 0 disables pruning. The minimal value above 0 is 550. Where 550 is the size in MB you want the node to occupy in your system. The bitcoin.conf is in ...


15

listaddressgroupings I used the command listaddressgroupings from the bitcoin-qt console window and it listed all my addresses. I then looked for one of my old send transactions here: https://blockchain.info/ And found the change address. It matches one of the addresses in the list.


15

EDIT: As of 0.16.0, use getnetworkinfo to get the version of bitcoind: getnetworkinfo: version, protocolversion, timeoffset, connections, proxy, relayfee, warnings Send a getinfo command to the server. It shows the version of bitcoind: { "version": 80400, "protocolversion": 70001, "walletversion": 60000, "balance": 102.2899977, "blocks": 104358, ...


15

EDIT: This answer is deprecated, it applied to an old version of the bitcoind client. Apparently RPC functionality is now removed. Please look at the other answers instead. I guess using bitcoind stop. I recommend this approach as killing the process could end you up with a corrupted database, from what I have experienced. Use bitcoind --help for all ...


15

The payment protocol (see BIP 70-72) will support attaching messages to transactions. Note that these messages do not end up in the blockchain, which is the right way to do it, as they are private information between sender and receiver - no need to make the entire world replicate it.


15

bitcoind The server version of bitcoin. bitcoin-cli This is a program that lets you issue commands to bitcoind. Example: # ./bitcoin-cli getblockcount 326215 bitcoin-tx This is a program that can create, parse, or modify transactions. Example: # ./bitcoin-tx -json ...


15

How do I generate a SegWit address using Bitcoin Core CLI? You can use addwitnessaddress addr, where addr is an existing P2PKH or P2SH address of yours. It will construct a P2SH-P2WPKH or P2SH-P2WSH address with the same key/script, if known to be valid. Note that this command is not available until SegWit is active on the network, as before that time, ...


14

Accounts are an internal bookkeeping mechanism of the Bitcoin client. They are not the same thing as addresses. When you move from one account to another, the coins remain in the same address, and if you need to spend them they will be spent from the same address. The only thing moving does is subtract a number from one account and adding to another - both ...


Only top voted, non community-wiki answers of a minimum length are eligible