Bitcoin payments are processed by use of distributed network nodes. There is a way to process payments through a simplified method as outlined by Satoshi Nakamoto in the “Bitcoin: A Peer-to-Peer Electronic Cash System” white paper:
“It is possible to verify payments without running a full network node. A user only needs to keep a copy of the block headers of the longest proof-of-work chain, which he can get by querying network nodes until he’s convinced he has the longest chain, and obtain the Merkle branch linking the transaction to the block it’s timestamped in. He can’t check the transaction for himself, but by linking it to a place in the chain, he can see that a network node has accepted it, and blocks added after it further confirm the network has accepted it.”
The preceding process is shown in the following diagram from the “Bitcoin: A Peer-to-Peer Electronic Cash System” white paper:
The referenced Merkle Tree was discussed in the “Reclaiming Disk Space” section of the paper and is the technique used to maximize disk space when processing Bitcoin transactions:
“Once the latest transaction in a coin is buried under enough blocks, the spent transactions before it can be discarded to save disk space. To facilitate this without breaking the block’s hash, transactions are hashed in a Merkle Tree , with only the root included in the block’s hash. Old blocks can then be compacted by stubbing off branches of the tree. The interior hashes do not need to be stored.”
The preceding process, to include the Merkle Tree technique is shown within the following diagram from the “Bitcoin: A Peer-to-Peer Electronic Cash System” white paper:
Although viable, the simplified payment verification does come with a reduced level of security and speed:
“As such, the verification is reliable as long as honest nodes control the network, but is more vulnerable if the network is overpowered by an attacker. While network nodes can verify transactions for themselves, the simplified method can be fooled by an attacker’s fabricated transactions for as long as the attacker can continue to overpower the network. One strategy to protect against this would be to accept alerts from network nodes when they detect an invalid block, prompting the user’s software to download the full block and alerted transactions to confirm the inconsistency. Businesses that receive frequent payments will probably still want to run their own nodes for more independent security and quicker verification.”
I have noticed recently that there are reports of a reduced number of nodes available on the Bitcoin network. Some who are passionate about Bitcoin are calling for volunteers to step up and establish their systems as nodes on the Bitcoin network. I’m not sure what exactly is involved in becoming a Bitcoin node, but if a business is receiving and sending Bitcoin payments, it seems as if serving as a Bitcoin node could be beneficial to both the individual and Bitcoin network.
1. H. Massias, X.S. Avila, and J.-J. Quisquater, “Design of a secure timestamping service with minimal trust requirements,” In 20th Symposium on Information Theory in the Benelux, May 1999.
2. J.R. Sedivy. Bitcoin: A Peer-to-Peer Electronic Cash System Abstract:
3. Ralph C. Merkle. Protocols For Public Key Cryptosystems:
4. Satoshi Nakamoto. Bitcoin: A Peer-to-Peer Electronic Cash System:
5. Stuart Haber, W. Scott Stornetta. Secure Names For Bit Strings:
6. Wikipedia. Satoshi Nakamoto: