University of Twente Student Theses


Solitor : runtime verification of smart contracts on the Ethereum network

Stegeman, Lars (2018) Solitor : runtime verification of smart contracts on the Ethereum network.

[img] PDF
Abstract:Ethereum is a decentralized blockchain platform. On this platform smart contracts are deployed and executed. Smart contracts are also called "executable code on the blockchain". It can perform calculations, store information and send/receive transactions. Since these smart contracts control a virtual currency, vulnerabilities can be costly. The code of smart contracts is public and changes to it are impossible since they are committed to the blockchain. Many techniques and tools can be used to detect these vulnerabilities. Formal verification proves a specification against all possible input on a certain contract, while testing only guarantees correct output for a given input. This thesis introduces the tool Solitor. Solitor is short for Solidity (runtime) monitor, and uses runtime verification as a technique to make smart contracts more secure. It enables users to specify the behaviour of a contract using annotations. It is a tool developed specifically for smart contracts on the Ethereum network. We define an annotation language to specify the requirements on a smart contract. Solitor can parse and translate these annotations in Solidity contracts to Solidity code which checks the annotation at runtime.
Item Type:Essay (Master)
Faculty:EEMCS: Electrical Engineering, Mathematics and Computer Science
Subject:54 computer science
Programme:Computer Science MSc (60300)
Link to this item:
Export this item as:BibTeX
HTML Citation
Reference Manager


Repository Staff Only: item control page