What's in a Smart Contract
The term “smart contract” is misleading, since smart contracts are neither smart, nor contracts. A smart contract is computer code that is capable of monitoring, executing and enforcing a legal agreement. Yet, smart contracts can help in automating and enforcing legal obligations set out in a contract / agreement. This article deals with the concept of smart contracts and their underlying technological foundation, future applications and legal implications
Automated performance is at the heart of a smart contract and is driven by blockchain technology (see "What's in a blockchain?"). Contractual clauses and functional outcomes are mapped as code on the blockchain. By having contract execution automated, transaction costs and dependencies on the other party's performance can be reduced. An important feature of smart contracts is that blockchain technology impedes retroactive alteration: hence, smart contracts are unmodifiable and final. This also entails that an automated transaction cannot be reversed or rolled back. This might be a challenge when a contract or an action performed under the underlying contract needs to be declared void.
Blockchain technology further enables the verification of a contract’s proper execution through all participants. The network constantly extends the blockchain to record the execution of the contract, and subsequently monitors the blockchain for compliance with the coded terms of the smart contract.
Legally, the early interpretation of smart contracts reduced the smart contract to the sole code, effectively declaring the code as the law itself: Self-contained, self-performed and self-enforced. Any mistake or accidental vulnerability of the code would have to be regarded as part of the contract too. However, applying a “two layer approach” is more reasonable, since it positions the smart contract within the wider legal system: The technical layer, the code, is limited to a section of the legal layer, the contract. Yet, both layers have to be coordinated and combined to be efficient and legally binding, which is the lawyers' role when dealing with smart contracts.
What's the difference to other automated transactions?
Established forms of automated contract execution of an underlying agreement (such as automated banking payments, standing orders, buying music online and downloading it after payment has been confirmed) differ in the following aspects from smart contracts:
- There are third parties involved that retain control over the respective transaction. A bank could interfere in the process and subtract or add money to any account at any time. Instead, smart contracts are not administered and controlled by such third party.
- The computer programisusually run on such third party's computer (server), ensuring e.g. the bank's internalcontrol, instead of seeking external validation (which can be done via the use of blockchain technology without the need of an intermediary).
- Traditional forms of automated transactions lack technical flexibility: One can only use the conditions and attributes provided for by the developer of the respective automation application. For example, traditional automated transactions can hardly be triggered upon e.g. specific weather conditions unless the developer implemented such an option. In contrast, a smart contract permits for such a trigger even if the developer did not explicitly provide for this condition when creating the code.
- With traditional automated contract executions the code is exclusively in the hand of the third party responsible for it. When it comes to smart contracts, the use of blockchain technology entails that all participants are running the same code, and this code is stored with all participants (or even publicly available). So, smart contracts create trust by using the decentralised, open and cryptographic nature of blockchain technology that allows people to trust each other and transact peer-to-peer, making the need for intermediaries and third parties obsolete.
What’s under the hood?
The blockchain – as a public database stored across all network participants simultaneously – captures and monitors all automated contract executions in the exact historical order. There are already several platforms offering an environment for running smart contracts. The most prominent one (however, also the most rudimentary one) is the bitcoin blockchain offering only very limited ability to implement more complex code: The bitcoin blockchain could be used to ensure that all relevant contract parties have (electronically) signed a transaction before a payment is made. The NXT blockchain already offers a selection of (simple) smart contracts, but it is not possible to go beyond these templates. A promising platform for smart contract applications is the Ethereum blockchain, allowing parties to implement any logic into an Ethereum smart contract. The Ethereum blockchain even offers its own cryptocurrency, called ether (ETH), that can be used as the choice of payment.
What are the applications?
Smart contracts are perfectly suited for agreements between two parties without third party validation, like e.g. trading over the counter (OTC) derivatives or the execution of contracts when the triggering event can be measured digitally (e.g. digital payments, changes in public registries, weather information as published by an official source). Another field for the application of smart contracts lies with escrow agents digitally confirming that a certain condition in the real world has been triggered (and thus, serving as a trigger for an automated action, e.g. a payment). Smart contracts could also provide for a new approach on public registries (e.g. the land register, population register or voting register), then stored publicly and safely on the blockchain. Airlines could implement a settlement system for airline passengers regarding their rights, paying out compensation automatically upon delays, thus reducing staffing cost. Further applications could, for the execution of certain compliance tasks, involve the formation of decentralised autonomous organisations, i.e. organisations whose bylaws are a bundle of smart contracts, thus, allowing a set of governance rules to be automatically enforced and executed via the underlying blockchain technology.
With a smart contract there is only one set of trade terms, predefined as code and self-executing upon the triggering event (e.g. payment being made), reducing misunderstandings on contract terms and dependencies on the other party's performance. But smart contracts also have a downside: deliberate ambiguity in a contract is not possible. So, clauses involving terms like "bona fide", "using best efforts" or "to the extent possible" can not be implemented as code, and can therefore not be part of a smart contract.
And what about the legal side?
Smart contracts and its various applications will have far-reaching implications in several legal fields such as contract law (especially regarding general terms, consumer protection and dealing with void contracts), license management, liability for damage resulting from incorrect or incomplete code, as well as corporate law (in particular with decentralised autonomous organisations and similar constructs), regulatory concerns and data privacy issues.
Dealing with void contracts could pose a challenge since any smart contract, once executed, cannot be legally reversed. The parties could agree on further transactions reversing the result of the void transactions, however, the void transaction would be kept on the smart contract's blockchain.
The most pertinent issue for lawyers will be aligning the legal layer (i.e. the agreement of the parties involved) with the technical layer (i.e. the computer code breaking down certain parts of the agreement as logic if-then statements). If these two layers are not aligned properly, a smart contract might generate more legal issues than it aims at solving.