12

Bitcoin has to maintain some balance to be able to maintain the ability to be decentralized. As you've correctly established, this is partly down to making sure that the resource requirements of fully validating the block chain are not unreasonable. There's a push form the consumer side of things to constantly increase the resource usage of Bitcoin for ...


5

The oldest version that can sync is 0.8.6. This is the version that first used LevelDB instead of BDB. Both the IRC node discovery and the protocol message changes occurred several versions prior.


4

Let's run through the program. The stack starts as <A sig> <A pubkey>. You run OP_DUP. The stack is now <A sig> <A pubkey> <A pubkey>. You run OP_HASH160. The stack is now <A sig> <A pubkey> <A pubkeyhash>. You push (A expected pubkeyhash). The stack is now <A sig> <A pubkey> <A pubkeyhash> &...


4

Bitcoin Core will automatically create a new wallet on first start. This wallet will contain 2000 private keys (unless otherwise specified by the -keypool=<n> option) and the seed used to generate those and future keys, at least until you encrypt the wallet. As such, there is not just one private key that you need to backup, rather you need to backup ...


4

Bitcoin uses a stack based language due to which the logical condition that will execute the IF or ELSE statements comes prior to the operator IF or ELSE. Let's take both your cases one by one and see how it gets executed on the stack. Case 1: ScriptSig: 0 <Alice's signature> <Bob's signature> 0 The stack starts at 0 <Alice's signature> &...


3

Once spent, the wallet removes the UTXO from its cache of unspent transactions. The transaction is not removed from the general database (the blockchain or block index). Full nodes running with txindex=1 keep every transaction forever. Some wallets though optimize the database to recover disk space - but this is a wallet-specific optimization and not part of ...


2

Bitcoin Core 0.18.0 is compatible with any wallet version from 2017, if you want to check you can download any Bitcoin Core release. Bust most probably you are misspelling your password. You could try also from the console. Use this command to decrypt it for 60 seconds: In Bitcoin-Qt click Window -> Console. walletpassphrase your-wallet-passphrase 60


2

Turns out my node had auto-banned localhost (127.0.0.1) at some point. As a result bitcoind was rejecting all incoming connections from the tor service, including my friend's attempts. I removed the ban and he is able to connect.


1

If you want to move all your computational power (hash power) suppose you could just disconnect from your current pool and connect to the other one If you want to divide between different pool I suppose you could just connect to them then use a tactic of process priority to choose how much power you want to devote to each pool depending on its process, for ...


1

I want add a clarification inside your good post by Jose Fonseca, the UTXO is a TransactionOutput, this structure has only 2 value, the amount and the scriptPubKey. The link to the previous transaction is inside the TransactionInput so, the TransactionInput and the transaction output is contained inside the Raw transaction. So inside the cache is present ...


1

Utreexo makes it possible to use Bitcoin securely without downloading the full blockchain. Since some prominent Bitcoin Core devs think there are not enough full nodes, I speculate that some may not like the prospect of less full nodes (less decentralization), and further more, more code complexity. Also, Utreexo is still in development. Also, since it ...


1

When you add a very small fee or no fee at all, as in your case, you'll need to ask for a special favor from a mining pool in order to get your TX in. It is possible to request, on exceptional basis, for a mining pool to include your transaction into one of their less busy blocks. They call this service "transaction accelerators". For instance, ViaBTC ...


1

P2PK scripts don't actually have addresses, it is really a bug that an address is shown for P2PK outputs that has been fixed for Bitcoin Core 0.19 (to be released soon) and later. Given a public key, you can derive an address from it by hashing the public key first with SHA256, then that hash with RIPEMD160. This result is known as the hash160. The hash160 ...


1

You're using on incorrect bitcoin-cli method to list your addresses. The command you're looking for is: bitcoin-cli listreceivedbyaddress 0 true The 0 parameter means you're requesting information on any address and the true flag means you want empty addresses included. The original command you were attempting, listaddressgroupings, is described here.


1

You are using a non-standard script with opcodes that are not found in standard scripts. Bitcoin Core cannot sign for non-standard scripts, the signer does not understand them.


1

size refers to the size of the block, which is 80 bytes for the header + sum(tx_sizes). As pointed out in the comments, this includes the segwit data and is meant to match the actual, on disk size of the block. bits refers to nBits, which encodes the target difficulty for the block. You can see an explanation of the encoding scheme here. chainwork ...


1

This is specified in BIP 13: https://github.com/bitcoin/bips/blob/master/bip-0013.mediawiki You compute the Base58Check encoding of the P2SH version byte (5 for mainnet, 196 for testnet) followed by the 20-byte Hash160 of the script. The code you're quoting is for P2PKH addresses, not P2SH.


1

When more than one wallet is available, the wallet is selected by sending the RPC requests to <host:port>/wallet/<wallet_name>. You might have to play around with the exact form, I suspect it might be <host:port>/wallet/wallets/walletA in your case, or <host:port>/wallets/walletA, or <host:port>/wallet/walletA.


1

Your VPN provider at least is in a position to deanonymize you. Therefore, I would rather use TOR. It's not infallible, but many people have used it successfully to achieve relative anonymity. Here's a short guide to setting up bitcoin core with TOR As Saxtheowl has already mentioned, however, both a VPN and TOR can only hide your IP address. There are many ...


1

Jumping straight to writing unit test can be hard, I suggest You check the official github page for how to contribute to the bitcoin core: https://github.com/bitcoin/bitcoin/blob/master/CONTRIBUTING.md If I wanted to contribute I would personally start by trying to solve some of the problems on their issues page because it is fresh, there is a lot of work, ...


1

You can check this github page about btcd, one of the concurrent of bitcoin core where they talk about their API which is fully compatible with bitcoin btcd provides a JSON-RPC API that is fully compatible with the original bitcoind/bitcoin-qt. There are a few key differences between btcd and bitcoind as far as how RPCs are serviced: https://github.com/...


1

You can use RPC bitcoin framework for creating the request to the node to get information. With python exist more library, I preferer this python-bitcoinrpc but a list the library is here For configuring the node to accepting the request look this reference other util references Complete bitcoin.conf file Gui generator bitcoin.conf Api reference with ...


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