The Community for Technology Leaders
2018 International Workshop on Blockchain Oriented Software Engineering (IWBOSE) (2018)
Campobasso, Italy
March 20, 2018 to March 20, 2018
ISBN: 978-1-5386-5987-8
pp: 9-18
Santiago Bragagnolo , Inria Lille - Nord Europe Villeneuve D'ascq, France
Henrique Rocha , Inria Lille - Nord Europe Villeneuve D'ascq, France
Marcus Denker , Inria Lille - Nord Europe Villeneuve D'ascq, France
Stephane Ducasse , Inria Lille - Nord Europe Villeneuve D'ascq, France
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 reexecuted 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.
INDEX TERMS
Contracts, Tools, Inspection, Debugging, Indexes
CITATION

S. Bragagnolo, H. Rocha, M. Denker and S. Ducasse, "SmartInspect: solidity smart contract inspector," 2018 International Workshop on Blockchain Oriented Software Engineering (IWBOSE), Campobasso, Italy, 2018, pp. 9-18.
doi:10.1109/IWBOSE.2018.8327566
249 ms
(Ver 3.3 (11022016))