4

NOTE: I am a Bitcoin newbie. Please excuse (and correct) any wrong terminology in this post.

Can the transaction data in an earlier block be edited? Of course, it would break the verification of the Proof-of-Work because data will not match the final block digest. However, wouldn't the original data be lost, and the link to later blocks in the chain be broken? i.e. Anybody can figure out that the block has been messed with. However, how would the correct data be retrieved?

My guess is that there are multiple copies of the blockchain. Even if the data in a block in one copy of the blockchain is corrupted, other copies of the "true" blockchain will still be "out there" and will be accepted because they would be longer (have greater difficulty score) than the broken copy.

Is that correct?

1

2 Answers 2

4

Yes, your understanding is correct. In fact, not only are there multiple copies, there are a huge number of copies: everyone who runs a full node has a complete and validated copy of the entire block chain, which they will share with anybody over the Bitcoin peer-to-peer network on request.

In fact, if your hypothetical attacker starts sending out their corrupted block, most users won't even notice: their software will validate it, notice it's incorrect, figure there is just something wrong with the attacker's data, and request it from some other node instead.

0

It is possible, but very very hard. If someone has mined a block, you basically have to mine your version of it, which will take a while. You will then gave to fight against the clock as the other miners try to mine another block. If a block is mined, all the blocks before it are basically encrypted again. To modify a block, you will have to remine it and everything after it.

Will it be possible to attack the blockchain by creating a broken block?

No. The bitcoin protocol will not accept it. If you somehow configure your node to accept it, you'll have to get the other nodes to accept it too.

2
  • I am not talking about the case where miner X wants to insert wrong information into the block chain and have it considered valid. I am talking about the data in some block (not necessarily the last) in the blockchain being modified by someone. This block will now not be valid because the hash of the data will not match the block ID and its link to all later blocks in the chain will be broken. i.e. Miner X does not want their modified data to be considered valid and accepted into the blockchain. Miner X only wants to mess up the blockchain. Aug 23, 2016 at 0:40
  • Oh, I see what you mean. This is impossible, as since the block will be invalid. The bitcoin protocol automatically rejects blocks like this. Aug 23, 2016 at 2:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.