@inproceedings{d271c2cfa57a49fa99d4c50a17099acf,
title = "Proving conditional termination for smart contracts",
abstract = "Termination of smart contracts is crucial for any blockchain system's security and consistency, especially for those supporting Turing-complete smart contract languages. Resource-constrained blockchain systems, like Ethereum and Hyperledger Fabric, could prevent smart contracts from terminating properly when the preallocated resources are not sufficient. The Zen system utilizes the dependent type system of the programming language F to prove the termination of smart contracts for all inputs during compilation time. Since the smart contract execution usually depends on the current blockchain state and user inputs, this approach is not always successful. In this work, we propose a lazy approach by statically proving conditional termination and non-termination of a smart contract to determine input conditions under which the contract terminates or not. Prior to the execution of the smart contract, the proof-carrying blockchain system will check that its current state and the contract's input satisfy the termination conditions in order to determine if the contract is qualified (i.e., eventually terminating) to run on the chain.",
keywords = "Blockchain, Non-termination, Smart contracts, Termination",
author = "Le, {Ton Chanh} and Lei Xu and Lin Chen and Weidong Shi",
note = "Publisher Copyright: {\textcopyright} 2018 Association for Computing Machinery.; 2nd ACM Workshop on Blockchains, Cryptocurrencies, and Contracts, BCC 2018 ; Conference date: 04-06-2018",
year = "2018",
month = may,
day = "22",
doi = "10.1145/3205230.3205239",
language = "English",
series = "BCC 2018 - Proceedings of the 2nd ACM Workshop on Blockchains, Cryptocurrencies, and Contracts, Co-located with ASIA CCS 2018",
publisher = "Association for Computing Machinery, Inc",
pages = "57--59",
booktitle = "BCC 2018 - Proceedings of the 2nd ACM Workshop on Blockchains, Cryptocurrencies, and Contracts, Co-located with ASIA CCS 2018",
}