2019 · 27 citations · 8 references
ComputingComputer ScienceCybersecuritySecure Software DevelopmentSecurity ArchitectureSoftware EngineeringControl-flow AnalysisData-flow AnalysisSoftware ConstructionSoftware TestingStatic Code AnalysisStatic Vulnerability AnalysisCode InstrumentationSmart Contract SecuritySmart Contract TestingSmart Contract Vulnerability AnalysisSource Code AnalysisSource Code Vulnerability AnalysisSource Code Vulnerability DetectionTransactions
Solidity is an object-oriented and high-level language for writing smart contracts that are used to execute, verify and enforce credible transactions on permissionless blockchains. In the last few years, analysis of smart contracts has raised considerable interest and numerous techniques have been proposed to check the presence of vulnerabilities in them. Current techniques lack traceability in source code and have widely differing work flows. There is no single unifying framework for analysis, instrumentation, optimisation and code generation of Solidity contracts at the source code level. In this paper, we present SIF, a comprehensive framework for Solidity contract analysis, query, instrumentation, and code generation. SIF provides support for Solidity contract developers and testers to build source level techniques for analysis, understanding, diagnostics, optimisations and code generation. We show feasibility and applicability of the framework by building practical tools on top of it and running them on 1838 real smart contracts deployed on the Ethereum network.
8
Making Smart Contracts Smarter
Loi Luu, Duc-Hiep Chu, Hrishi Olickel et al. · 2016 · 2.2K citations
Petar Tsankov, Andrei Dan, Dana Drachsler-Cohen et al. · 2018 · 1K citations
Frances Allen · ACM SIGPLAN Notices · 1970 · 720 citations
ZEUS: Analyzing Safety of Smart Contracts
Sukrit Kalra, Seep Goel, Mohan Dhawan et al. · 2018 · 710 citations · Full text
Sergei Tikhomirov, Ekaterina Voskresenskaya, Ivan Ivanitskiy et al. · 2018 · 652 citations · Full text