8

There are multiple definitions of the term "double spending" at play here. First, there is the actual definition of double spending: to spend the same money multiple times. A simple example of this is the coin on a string in a vending machine. You put tie a string to a coin, when you put the coin in the machine, it thinks you paid, you get whatever you want ...


8

What makes you think that this isn't implemented? Block download is already multithreaded and blocks are downloaded out of order. Everything that can be verified in a block without requiring other blocks (such as the PoW matching the PoW stated in the block header, merkle root, etc.) are verified when the block is received. This all happens in separate ...


3

How can they list the unspent transactions and the current amount of an address which "is not in their wallet"? Block explorer sites maintain a separate database of information which is built by continuously scanning the Bitcoin blockchain. If block explorer sites see a standard locking script in the outputs of the transactions, they scrape the addresses ...


2

Different networks are completely independent, and while it is technically possible to put together a single node software that is able to connect and process all of them, it makes little sense for someone to invest that amount of time and money in it when you can simply run each network independently (even on the same machine).


2

When you start bitcoind just pass the -txindex flag in order to have it create the transaction index to be able to get any transaction by id: bitcoind -txindex In the console, you can get any raw transaction by its transaction id (hash): bitcoin-cli getrawtransaction 15f7c2c57cce37d9b8927f957840ec9367bb504780347e497c758ee022b2a143 ...


2

Bitcoin does not actually use addresses internally. Addresses are just a way for us humans to specify what scriptPubKey we want the wallet software to create. When a transaction output is spent, the address is not included anywhere because it is not needed. Bitcoin Core's decoding RPCs will include more information than is actually present in the ...


2

There are no real rules, per se, just various optimizations. ASICs are fast. They can burn through the entire 2^32 possible nonces for a given block in seconds, which requires miners to use the extra nonce field in the coinbase transaction to generate a new block header (since altering the coinbase transaction changes the merkle root) and try again. This ...


2

If you use connect, you will only connect to those specific nodes. addnode on the other hand tries to connect to the specified nodes, but keeps connecting to others as well (unless you add more nodes than there are outbound connections available, I presume). It can be helpful regarding privacy to only connect to nodes you trust - how to find them is ...


2

When a transaction happen, the miners compute a value called "prof of work". This value is calculated in order to get a 0 value (or something very closed to 0) for the hash of the value + the transaction + the last pow. The miner does not perform the PoW on each transaction individually, but on a set of transactions, whose combined size is less than ...


2

It is complaining about not being able to find the bitcoin-cli binary of the Bitcoin Core installation (which is normal since you are running it from a location that is not on the $PATH hence it can't find it). To fix this issue you can tell lightningd explicitly which binary to use as bitcoin-cli by doing this: ./clightning-v0.7.2.1/bin/lightningd \ ...


2

The data of the scriptSig is mooved from TransactionInput to RawTransaction, so the Raw transaction doesn't is malleability? maybe I can't imagine what really happened to non-witness transactions during malleability, can you give me an example? The transaction ID is a hash of the entire transaction data structure (the version, inputs, outputs, signatures, ...


2

When you encrypt the wallet, only the private keys are actually being encrypted. You will be prompted to enter your encryption passphrase when the private keys are needed. Public keys in the keypool, transaction information, and other metadata remain unencrypted because they are either public information or have no effect on the security of your Bitcoin. ...


1

Your question contains many misconceptions. Yes, it is perfectly fine and safe to generate private keys and their corresponding addresses completely offline and not connected to the internet. In fact, people recommend that you do this because it is safer than doing it online. There is no central database (Bitcoin is decentralized) where you must register a ...


1

This is a known issue due to how segwit data is stored. To parse a transaction correctly, you must use either of the following: getrawtransaction <tx_id> true decoderawtransaction <txhex> true For the first one, the API will return a decoded, complete transaction object including witness data as a JSON object. If you are decoding raw ...


1

The problem is with getrawtransaction command in bitcoin core. It doesn't recognize the SegWit input which is why it decode/deserialize the transaction incorrectly (wrong input txid and negative amount in output). https://bitcointalk.org/index.php?topic=5014781.0


1

To my knowledge, the only parameters that have to be set before an initial block download are the regtest and testnet options. Anything else, including txindex, can be altered later, although it may cost you a reindex or reindex-chainstate to enable functionality like a txindex if done after the block download has started. Other parameters such as those ...


1

Why the witness data is stored outside the block? what do you mean? I think I don't understand the sense of this space-saving because the witness data is present inside the blk file. The signatures are in the block. All signatures of a block form another merkle tree and are keeping in an output of the coinbase tx. I think this refers to the "UTXO set" ...


1

No, that won't work. joinpsbts must be used before any signatures are created. Otherwise existing signatures will not be valid for the joined transaction. Rather, each person must create their own PSBT, send them to each other or to some coordinator where the PSBTs are then joined together with joinpsbts. Then the joined PSBT can be distributed back to ...


1

There are a lot of things that need to be considered when selecting coins. Just covering the amount that you want to send is not enough, you have not considered the transaction fees that you will be paying for your transaction. So even though you have UTXOs of 0.1 BTC in value, using just one of those means that you will not have enough value in the ...


1

there is no faster way to rename , but there are steps you have to rename the bitcoin source code.. for ex let your altcoin's name be : andracoin First : inside the src folder use this command : find ./ -type f -readable -writable -exec sed -i 's/bitcoin/andracoin/g' {} \; then: find ./ -type f -readable -writable -exec sed -i 's/Bitcoin/Andracoin/g' ...


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