How can we see transactions in a particular block of Bitcoin, if they are encrypted and only Merkle root of transactions is stored on the blockchain. I think in that way we should be having an immutable ledger with private info protected (since we cannot reverse engineer the Merkle root hash to know the transaction info). But I've read that blockchain is facing scalability and privacy issues. Why can't we just encrypt the data in the block and let it be decrypted only with the private key of an individual?


Of course you can do that, but if you process off-chain only. In the same instant you try to read it decrypted, the private key shall be written on the blockchain for ever.

I.e. any

decrypt (stored_digest_pointer, private_key)

call will remain readable for ever.

  • ok but what about merkle tree. isnt merkle tree it self provide encryption to data? – user8428217 Oct 15 '18 at 13:13
  • Merkle tree is the hash of known elements, it can be easily reconstructed starting from the genesis block and traveling forward, it is not a secret information, but a summarizing information, i.e. you can summarize by it the current status, but nobody is able to decrypt it, while all the world is able to validate it as seen before. – Rick Park Oct 15 '18 at 13:16

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.