The "Mastering Bitcoin" book says that each block header contains a 32B long hash of the Merkle root for all the transactions it contains.

If I extract all these Merkle roots from all the blocks in the blockchain (longest branch only) and put them in a list, will that list have any duplicates?

1 Answer 1


The merkle root is a 32 byte hash.

As the hashing operation is sha256, it is exceedingly unlikely that you will find duplicates, but it is not, strictly speaking, impossible.

  • The list will actually have 2 duplicates, due to the coinbase duplications before BIP30. Dec 1, 2020 at 6:51
  • @PieterWuille Isn't that simply a duplicate coinbase transaction? Since block 91880 contains a non-coinbase transaction as well, the merkle root in the header will be different Dec 1, 2020 at 8:15
  • 1
    Ah, I must have misremembered then! I thought they both had no other transactions. Dec 1, 2020 at 8:17

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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