Paper 2016/757

Redactable Blockchain -- or -- Rewriting History in Bitcoin and Friends

Giuseppe Ateniese, Bernardo Magri, Daniele Venturi, and Ewerton Andrade


We put forward a new framework that makes it possible to re-write and/or compress the content of any number of blocks in decentralized services exploiting the blockchain technology. As we argue, there are several reasons to prefer an editable blockchain, spanning from the necessity to remove improper content and the possibility to support applications requiring re-writable storage, to "the right to be forgotten". Our approach generically leverages so-called chameleon hash functions (Krawczyk and Rabin, NDSS '00), which allow to efficiently determine hash collisions given a secret trapdoor information. We detail how to integrate a chameleon hash function in virtually any blockchain-based technology, for both cases where the power of redacting the blockchain content is in the hands of a single trusted entity and where such a capability is distributed among several distrustful parties (as is the case in Bitcoin). We also report on a proof-of-concept implementation of a redactable blockchain, building on top of Nakamoto's Bitcoin core. The implementation only requires minimal changes to the way current client software interprets information stored in the blockchain and to the current blockchain, block, or transaction structures. Moreover, our experiments show that the overhead imposed by a redactable blockchain is small compared to the case of an immutable one.

Note: Fixed fonts in the PDF file.

Available format(s)
Cryptographic protocols
Publication info
Published elsewhere. MAJOR revision.IEEE EuroS&P 2017
BlockchainBitcoinChameleon hash functions
Contact author(s)
bernardomagri21 @ gmail com
2017-05-11: last of 2 revisions
2016-08-09: received
See all versions
Short URL
Creative Commons Attribution


      author = {Giuseppe Ateniese and Bernardo Magri and Daniele Venturi and Ewerton Andrade},
      title = {Redactable Blockchain  -- or --  Rewriting History in Bitcoin and Friends},
      howpublished = {Cryptology ePrint Archive, Paper 2016/757},
      year = {2016},
      note = {\url{}},
      url = {}
Note: In order to protect the privacy of readers, does not use cookies or embedded third party content.