In this paper we discuss smart contracts – computer programmes running on top of a blockchain. We start with some intuitive examples that demonstrate the concept of a smart contract and then consider the Ethereum platform, the most notable platform for decentralized applications. We also outline some applications of smart contracts and discuss associated risks.
In our daily life, contracts are valuable mechanisms to uphold the promises between individuals in a fair manner. By definition, a contract is a voluntary agreement between two or more parties that creates certain obligations and is intended to be enforceable by law. A smart contract is a form of digital contract.1 It contains a set of coded rules to which the parties to that smart contract agree and by which they must abide. This code is stored, replicated, and executed on a blockchain.2
Currently, the most prominent blockchain platform for writing smart contracts is Ethereum. Ethereum is an open-source, blockchain-based distributed computing platform that has its own currency (Ether) and that also provides several blockchain-based features including smart contracts. This paper will use the Ethereum framework to illustrate the functionality and implementation of smart contracts.3
1 The concept of digital contracts traces back to the mid-nineties when the term smart contract was first formally introduced by Nick Szabo: Nick Szabo, “The Idea of Smart Contracts”, (1997)
2 To learn more about Blockchain, please see our report: Blockchain and Its Applications to Cryptocurrencies. Global Risk Institute (June 4, 2018)
3 Note: There are other open-source and proprietary platforms that can support smart contracts