IOHK, the blockchain R&D company, has announced that its research project with the University of Illinois at Urbana-Champaign (UIUC) has modelled the world’s first complete fully-executable formal semantics of the Ethereum Virtual Machine (EVM). The research produced a new framework, called KEVM, for formal execution, analysis, and verification of EVM smart contracts.
The Ethereum Foundation and IC3, an initiative of faculty members at Cornell University, Cornell Tech, UC Berkeley, the University of Illinois at Urbana-Champaign, and the Technion, selected KEVM as the winner of its week-long blockchain development event – IC3-Ethereum Crypto Boot Camp.
Prof. Grigore Rosu of the UIUC’s Siebel Center for Computer Science and CEO of Runtime Verification said: “The pressing need to address repeated security vulnerabilities and high-profile failures in Ethereum smart contracts hasn’t been adequately addressed by existing formal verification and program analysis tools. No fully-formal, rigorous, comprehensive, and executable semantics of EVM existed until now, leaving a lack of rigor on which to base such tools.
KEVM is significant because Ethereum users need the guarantees of formal verification to safeguard against financial losses due to software bugs. This work serves as a foundation for the development of new smart contract analysis tools; more importantly, it gives us invaluable insight on how to design better programming languages for smart contracts.”
IOHK CEO Charles Hoskinson said: “This research has given us a great degree of insight into what one should do to redesign the EVM to make it more secure, faster, and more efficient. It will now be easier to build tooling for the EVM, such as verified compilers. This white paper is the result of our first wave of research into this area. Based on this research, IOHK will begin building prototypes and our hope is to have an EVM 2.0 ready next year, as part of Cardano, a product we are currently building.”
Prof. Rosu added: “KEVM has demonstrated that our unique approach based on K formal executable semantics is feasible and not computationally restrictive. We hope our work serves as a strong basis for the development of a wide range of useful, formally-derived tools for Ethereum, like model checkers, certified compilers, and program equivalence checkers.”