Gigahorse: Thorough, Declarative Decompilation of Smart Contracts
The rise of smart contracts - autonomous applications running on blockchains - has led to a growing number of threats, necessitating sophisticated analysis. However, smart contracts, which transact valuable tokens and cryptocurrencies, are compiled to very low-level bytecode. It is estimated that high-level source code is publicly available for under 1% of contracts on Ethereum (the most popular smart-contract blockchain).
In this paper, we present the Gigahorse toolchain. At its core is a reverse compiler (i.e., a decompiler). The decompiler transforms smart contracts from Ethereum bytecode into a high-level 3-address code representation, which can be analyzed further in a uniform way. Decompilation obviates the need for a contract’s source, allowing the analysis of both new and deployed contracts. Gigahorse advances the state of the art on several fronts. It gives the highest analysis precision and completeness among decompilers for Ethereum smart contracts - e.g., Gigahorse can decompile over 99.98% of deployed contracts, compared to 88% for the recently-published Vandal decompiler and under 50% for the state-of-the-practice Porosity decompiler. Importantly, Gigahorse offers a full-featured toolchain for further analyses (and a “batteries included” approach, with multiple clients already implemented), together with the highest performance and scalability. Key to these improvements is Gigahorse’s use of a declarative, logic-based specification, which allows high-level insights to inform low-level decompilation.
Fri 31 MayDisplayed time zone: Eastern Time (US & Canada) change
16:00 - 17:20
Reverse EngineeringTechnical Track / Papers at St-Paul / Ste-Catherine
Chair(s): Sandeep Kuttal The University of Tulsa
|Recovering Variable Names for Minified Code with Usage ContextsTechnical Track|
Hieu Tran The University of Texas at Dallas, Ngoc Tran , Son Nguyen The University of Texas at Dallas, Hoan Nguyen Iowa State University, Tien N. Nguyen University of Texas at Dallas
|Gigahorse: Thorough, Declarative Decompilation of Smart ContractsTechnical Track|
Neville Grech University of Athens, Lexi Brent University of Sydney, Bernhard Scholz University of Sydney, Australia, Yannis Smaragdakis University of Athens
|Probabilistic DisassemblyTechnical Track|
Kenneth Miller Purdue University, Yonghwi Kwon University of Virginia, Yi Sun Purdue University, USA, Zhuo Zhang Purdue University, Xiangyu Zhang Purdue University, Zhiqiang Lin The Ohio State University