Proof-carrying smart contracts

Thomas Dickerson, Paul Gazzillo, Maurice Herlihy, Vikram Saraph, Eric Koskinen

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

12 Scopus citations

Abstract

We propose a way to reconcile the apparent contradiction between the immutability of idealized smart contracts and the real-world need to update contracts to fix bugs and oversights. Our proposal is to raise the contract’s level of abstraction to guarantee a specification φ instead of a particular implementation of that specification. A combination of proof-carrying code and proof-aware consensus allows contract implementations to be updated as needed, but so as to guarantee that φ cannot be violated by any future upgrade. We propose proof-carrying smart contracts (PCSCs), aiming to put formal correctness proofs of smart contracts on the chain. Proofs of correctness for a contract can be checked by validators, who can enforce the restriction that no update can violate φ. We discuss some architectural and formal challenges, and include an example of how our approach could address the well-known vulnerabilities in the ERC20 token standard.

Original languageEnglish
Title of host publicationFinancial Cryptography and Data Security - FC 2018 International Workshops, BITCOIN, VOTING, and WTSC, Revised Selected Papers
EditorsIttay Eyal, Aviv Zohar, Massimiliano Sala, Andrea Bracciali, Federico Pintore, Vanessa Teague, Jeremy Clark
Pages325-338
Number of pages14
DOIs
StatePublished - 2019
Event22nd International Conference on Financial Cryptography and Data Security, FC 2018 - Nieuwpoort, Netherlands
Duration: 26 Feb 20182 Mar 2018

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume10958 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference22nd International Conference on Financial Cryptography and Data Security, FC 2018
Country/TerritoryNetherlands
CityNieuwpoort
Period26/02/182/03/18

Fingerprint

Dive into the research topics of 'Proof-carrying smart contracts'. Together they form a unique fingerprint.

Cite this