Towards Principled Compilation of Ethereum Smart Contracts (SoK)

被引:1
作者
Arias, Emilio Jesus Gallego [1 ]
机构
[1] PSL Univ Blockchain Adv Res & Technol, MINES ParisTech, Ctr Rech Informat, Paris, France
来源
2019 10TH IFIP INTERNATIONAL CONFERENCE ON NEW TECHNOLOGIES, MOBILITY AND SECURITY (NTMS) | 2019年
关键词
secure compilation; formal methods; smart contracts; verification; Ethereum;
D O I
10.1109/ntms.2019.8763856
中图分类号
TP39 [计算机的应用];
学科分类号
081203 ; 0835 ;
摘要
A blockchain is a tamper-proof distributed transaction registry; first popularized by Bitcoin [1], it has now been extended to support storage of arbitrary state and computations in-ledger. Ethereum [2] and its smart contract model have proven to be a very popular choice for this task, routinely managing assets valued in the billions. However, development of such contracts has been anything but easy. While formally specified, the Ethereum execution platform is based on a low-level machine, quite similar to assembly; semantics for contract operations such as call are quite complex, and the need for resource management creates unanticipated modes of failure. The dominant day-to-day programming platform for Ethereum is Solidity [3], an Object-Oriented language that identifies contracts with objects. While reasoning about Solidity programs is much easier than for their bytecode counterparts, it is not extent of challenges either, and moreover, Solidity lacks a source-level semantics, which forces developers to reason over output bytecode again. In this short paper we explore the main barriers to lift in order to achieve a principled compilation strategy for Solidity. We will review the standard concepts on verified and secure compilation, and frame them in the context of the Ethereum platform.
引用
收藏
页数:5
相关论文
共 29 条
[1]   ETHIR: A Framework for High-Level Analysis of Ethereum Bytecode [J].
Albert, Elvira ;
Gordillo, Pablo ;
Livshits, Benjamin ;
Rubio, Albert ;
Sergey, Ilya .
AUTOMATED TECHNOLOGY FOR VERIFICATION AND ANALYSIS (ATVA 2018), 2018, 11138 :513-520
[2]  
[Anonymous], 2017, CORR
[3]   Foundational proof-carrying code [J].
Appel, AW .
16TH ANNUAL IEEE SYMPOSIUM ON LOGIC IN COMPUTER SCIENCE, PROCEEDINGS, 2001, :247-256
[4]   A Survey of Attacks on Ethereum Smart Contracts (SoK) [J].
Atzei, Nicola ;
Bartoletti, Massimo ;
Cimoli, Tiziana .
PRINCIPLES OF SECURITY AND TRUST (POST 2017), 2017, 10204 :164-186
[5]  
Barthe G, 2015, ACM SIGPLAN NOTICES, V50, P55, DOI [10.1145/10.1145/2676726.2677000, 10.1145/2775051.2677000]
[6]  
Barthe Gilles., 2016, Conference on Web and Internet Economics (WINE), Montreal, Quebec (Lecture Notes in Computer Science), V10123, P273, DOI DOI 10.1007/978-3-662-54110-4_20
[7]  
Brent L., 2018, ARXIV180903981
[8]  
Buterin V., 2017, ERC 20 TOKEN STANDAR
[9]   Pyramid Stereo Matching Network [J].
Chang, Jia-Ren ;
Chen, Yong-Sheng .
2018 IEEE/CVF CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION (CVPR), 2018, :5410-5418
[10]  
Crafa S., 2019, 3 WORKSH TRUST SMART