跳到主要导航 跳到搜索 跳到主要内容

sCompile: Critical Path Identification and Analysis for Smart Contracts

  • Jialiang Chang
  • , Bo Gao
  • , Hao Xiao
  • , Jun Sun
  • , Yan Cai
  • , Zijiang Yang
  • Western Michigan University
  • Singapore University of Technology and Design
  • Singapore Management University
  • CAS - Institute of Software

科研成果: 书/报告/会议事项章节会议稿件同行评审

65 引用 (Scopus)

摘要

Ethereum smart contracts are an innovation built on top of the blockchain technology, which provides a platform for automatically executing contracts in an anonymous, distributed, and trusted way. The problem is magnified by the fact that smart contracts, unlike ordinary programs, cannot be patched easily once deployed. It is important for smart contracts to be checked against potential vulnerabilities. In this work, we propose an alternative approach to automatically identify critical program paths (with multiple function calls including inter-contract function calls) in a smart contract, rank the paths according to their criticalness, discard them if they are infeasible or otherwise present them with user friendly warnings for user inspection. We identify paths which involve monetary transaction as critical paths, and prioritize those which potentially violate important properties. For scalability, symbolic execution techniques are only applied to top ranked critical paths. Our approach has been implemented in a tool called sCompile, which has been applied to 36,099 smart contracts. The experiment results show that sCompile is efficient, i.e., 5 s on average for one smart contract. Furthermore, we show that many known vulnerabilities can be captured if user inspects as few as 10 program paths generated by sCompile. Lastly, sCompile discovered 224 unknown vulnerabilities with a false positive rate of 15.4% before user inspection.

源语言英语
主期刊名Formal Methods and Software Engineering - 21st International Conference on Formal Engineering Methods, ICFEM 2019, Proceedings
编辑Yamine Ait-Ameur, Shengchao Qin
出版商Springer
286-304
页数19
ISBN(印刷版)9783030324087
DOI
出版状态已出版 - 2019
活动21st International Conference on Formal Engineering Methods, ICFEM 2019 - Shenzhen, 中国
期限: 5 11月 20199 11月 2019

出版系列

姓名Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
11852 LNCS
ISSN(印刷版)0302-9743
ISSN(电子版)1611-3349

会议

会议21st International Conference on Formal Engineering Methods, ICFEM 2019
国家/地区中国
Shenzhen
时期5/11/199/11/19

学术指纹

探究 'sCompile: Critical Path Identification and Analysis for Smart Contracts' 的科研主题。它们共同构成独一无二的指纹。

引用此