SmartInspect: Solidity Smart Contract Inspector

Santiago Bragagnolo 1 Henrique Rocha 1 Marcus Denker 1 Stéphane Ducasse 1
1 RMOD - Analyses and Languages Constructs for Object-Oriented Application Evolution
Inria Lille - Nord Europe, CRIStAL - Centre de Recherche en Informatique, Signal et Automatique de Lille (CRIStAL) - UMR 9189
Abstract : Solidity is a language used for smart contracts on the Ethereum blockchain. Smart contracts are embedded procedures stored with the data they act upon. Debugging smart contracts is a really difficult task since once deployed, the code cannot be re-executed and inspecting a simple attribute is not easily possible because data is encoded. In this paper, we address the lack of inspectability of a deployed contract by analyzing contract state using decompilation techniques driven by the contract structure definition. Our solution, SmartInspect, also uses a mirror-based architecture to represent locally object responsible for the interpretation of the contract state. SmartInspect allows contract developers to better visualize and understand the contract stored state without needing to redeploy, nor develop any ad-hoc code.
Document type :
Conference papers
Complete list of metadatas

Cited literature [19 references]  Display  Hide  Download

https://hal.inria.fr/hal-01831075
Contributor : Lse Lse <>
Submitted on : Thursday, July 5, 2018 - 3:32:15 PM
Last modification on : Friday, March 22, 2019 - 1:36:35 AM
Long-term archiving on : Monday, October 1, 2018 - 5:49:43 PM

File

Braga18a-IWBOSE-SmartInspect.p...
Files produced by the author(s)

Identifiers

Collections

Citation

Santiago Bragagnolo, Henrique Rocha, Marcus Denker, Stéphane Ducasse. SmartInspect: Solidity Smart Contract Inspector. IWBOSE 2018 - 1st International Workshop on Blockchain Oriented Software Engineering, Mar 2018, Campobasso, Italy. ⟨10.1109/IWBOSE.2018.8327566⟩. ⟨hal-01831075⟩

Share

Metrics

Record views

640

Files downloads

582