Visual emulation for Ethereum's virtual machine

Robert Norvill, Beltran Borja Fiz Pontiveros, Radu State, Andrea Cullen
2018 NOMS 2018 - 2018 IEEE/IFIP Network Operations and Management Symposium  
In this work we present E-EVM, a tool that emulates and visualises the execution of smart contracts on the Ethereum Virtual Machine. By working with the readily available bytecode of smart contracts we are able to display the program's control flow graph, opcodes and stack for each step of contract execution. This tool is designed to aid the user's understanding of the Etheruem Virtual Machine as well as aid the analysis of any given smart contract. As such, it functions as both an analysis and
more » ... a learning tool. It allows the user to view the code in each block of a smart contract and follow possible control flow branches. It is able to detect loops and suggest optimisation candidates. It is possible to step through a contract one opcode at a time. E-EVM achieved an average of 85.6% code coverage when tested.
doi:10.1109/noms.2018.8406332 dblp:conf/noms/NorvillPSC18 fatcat:eehgxuux5fe7ff423jsrcsfqma