Gigahorse: Thorough, Declarative Decompilation of Smart Contracts

Επιστημονική δημοσίευση - Ανακοίνωση Συνεδρίου uoadl:3182614 20 Αναγνώσεις

Μονάδα:
Ερευνητικό υλικό ΕΚΠΑ
Τίτλος:
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 program analysis. However, smart contracts, which transact
valuable tokens and cryptocurrencies, are compiled to very low-level
bytecode. This bytecode is the ultimate semantics and means of
enforcement of the contract.
We present the Gigahorse toolchain. At its core is a reverse compiler
(i.e., a decompiler) that decompiles smart contracts from Ethereum
Virtual Machine (EVM) bytecode into a high-level 3-address code
representation. The new intermediate representation of smart contracts
makes implicit data- and control-flow dependencies of the EVM bytecode
explicit. Decompilation obviates the need for a contract’s source and
allows 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.
Έτος δημοσίευσης:
2019
Συγγραφείς:
Grech, Neville
Brent, Lexi
Scholz, Bernhard
Smaragdakis,
Yannis
Εκδότης:
IEEE Comput. Soc
Τίτλος συνεδρίου:
2019 IEEE/ACM 41ST INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING
(ICSE 2019)
Σελίδες:
1176-1186
Λέξεις-κλειδιά:
Ethereum; Blockchain; Decompilation; Program Analysis; Security
Επίσημο URL (Εκδότης):
DOI:
10.1109/ICSE.2019.00120
Το ψηφιακό υλικό του τεκμηρίου δεν είναι διαθέσιμο.