Coverage-Directed Differential Testing of EVM Implementations

MPhil Thesis Defence


Title: "Coverage-Directed Differential Testing of EVM Implementations"

By

Mr. Hang XU



Abstract

Ethereum virtual machine(EVM) is the heart of the Ethereum infrastructure and 
functions as the runtime environment for smart contracts. Inconsistencies in 
EVMs may cause transaction sender’ financial losses. Furthermore, EVM’s 
vulnerabilities may lead to serious problems such as transaction failure or 
even client crashes. Thus, it is critical to ensure the reliability and 
consistency of mainstream EVM implementations. However, not much work has been 
done on validating EVMs. In this thesis, we design 5 mutators to continuously 
manipulate the control flow of seed bytecodes of smart contracts to generate 
semantically different mutants. These mutants execute on a reference EVM and 
use branch coverage of EVM as guidelines to selectively accept the generated 
mutants. This step steers the mutation process toward diverse mutants. The 
generated mutants are then employed to differentially test EVMs.

We have evaluated this technique on mainstream EVM implementations, including 
go-ethereum, openethereum and aleth. Compared to existing work, the 
experimental results show that our approach can (1) generate more valid test 
cases in a short time period; (2)achieve higher code coverage in EVM and (3) 
discover some previously unknown issues among EVMs.


Date:  			Wednesday, 5 August 2020

Time:			2:00pm - 4:00pm

Zoom meeting:		https://hkust.zoom.us/j/96994112085

Committee Members:	Prof. Shing-Chi Cheung (Supervisor)
  			Prof. Raymond Wong (Chairperson)
 			Dr. Dimitris Papadopoulos


**** ALL are Welcome ****