Automated Formal Verification of Smart Contracts
Florian Buenzli Dana Drachsler- Cohen Andrei Dan Arthur Gervais Hubert Ritzdorf Petar Tsankov Martin Vechev Quentin Hibon
Automated Formal Verification of Smart Contracts Florian Hubert - - PowerPoint PPT Presentation
Automated Formal Verification of Smart Contracts Florian Hubert Dana Drachsler- Andrei Arthur Quentin Petar Martin Buenzli Ritzdorf Cohen Dan Gervais Hibon Tsankov Vechev Growth of the Ethereum Ecosystem $27B Billions of USD are
Florian Buenzli Dana Drachsler- Cohen Andrei Dan Arthur Gervais Hubert Ritzdorf Petar Tsankov Martin Vechev Quentin Hibon
$1B $27B $50M Oct 2015 Jul 2016 Aug 2017
contract Wallet { uint balance = 10; function withdraw(){ if(balance > 0) msg.sender.call.value(balance)(); balance = 0; } }
uint balance = 10; function withdraw() { if(balance > 0) msg.sender.call.value(balance)(); balance = 0; } function moveBalance() { wallet.withdraw(); } ...
function () payable { wallet.withdraw(); }
withdraw() 10 ether withdraw() 10 ether
...
address owner = ...; function initWallet(address _owner) {
} function withdraw(uint amount) { if (msg.sender == owner) {
} }
Very limited guarantees Better than testing, but can still miss vulnerabilities Strong guarantees
Very limited guarantees Better than testing, but can still miss vulnerabilities Strong guarantees
Interesting discussions on Reddit
Cutting-edge research in the area of:
§ Program analysis and synthesis § Machine learning § Blockchain / network security http://www.srl.inf.ethz.ch http://jsnice.org http://apk-deguard.com http://securify.ch http://psisolver.org http://eventracer.org
Enabling Trust in Blockchains
contact@chainsecurity.com @chain_security
Join our team of security / blockchain / program analysis experts