Paper 2020/887

Updatable Blockchains

Michele Ciampi, Nikos Karayannidis, Aggelos Kiayias, and Dionysis Zindros


Software updates for blockchain systems become a real challenge when they impact the underlying consensus mechanism. The activation of such changes might jeopardize the integrity of the blockchain by resulting in chain splits. Moreover, the software update process should be handed over to the community and this means that the blockchain should support updates without relying on a trusted party. In this paper, we introduce the notion of updatable blockchains and show how to construct blockchains that satisfy this definition. Informally, an updatable blockchain is a secure blockchain and in addition it allows to update its protocol preserving the history of the chain. In this work, we focus only on the processes that allow securely switching from one blockchain protocol to another assuming that the blockchain protocols are correct. That is, we do not aim at providing a mechanism that allows reaching consensus on what is the code of the new blockchain protocol. We just assume that such a mechanism exists (like the one proposed in NDSS 2019 by Zhang et. al), and show how to securely go from the old protocol to the new one. The contribution of this paper can be summarized as follows. We provide the first formal definition of updatable ledgers and propose the description of two compilers. These compilers take a blockchain and turn it into an updatable blockchain. The first compiler requires the structure of the current and the updated blockchain to be very similar (only the structure of the blocks can be different) but it allows for an update process more simple, efficient. The second compiler that we propose is very generic (i.e., makes few assumptions on the similarities between the structure of the current blockchain and the update blockchain). The drawback of this compiler is that it requires the new blockchain to be resilient against a specific adversarial behaviour and requires all the honest parties to be online during the update process. However, we show how to get rid of the latest requirement (the honest parties being online during the update) in the case of proof-of-work and proof-of-stake ledgers.

Available format(s)
Publication info
Published elsewhere. Minor revision. 25th European Symposium on Research in Computer Security (ESORICS) 2020
Contact author(s)
mciampi @ ed ac uk
nikos karagiannidis @ iohk io
akiayias @ inf ed ac uk
dionyziz @ gmail com
2020-07-16: received
Short URL
Creative Commons Attribution


      author = {Michele Ciampi and Nikos Karayannidis and Aggelos Kiayias and Dionysis Zindros},
      title = {Updatable Blockchains},
      howpublished = {Cryptology ePrint Archive, Paper 2020/887},
      year = {2020},
      note = {\url{}},
      url = {}
Note: In order to protect the privacy of readers, does not use cookies or embedded third party content.