Even though they are still largely theoretical, smart contracts are being hailed as a force that will disrupt a number of industries. However, only superficial attention has been paid to the impact smart contracts will have on contract law and the role of the law in determining where and how smart contracts will be used.
This post provides an overview of smart contracts and how they work and identifies some of the areas of contract law that we expect will be the focus of jurisprudential change.
Understanding smart contracts
The term “smart contract” was first used by a computer scientist named Nick Szabo in 1993. At a high level, a smart contract is a computer program that encodes certain conditions and outcomes that are agreed to by the contracting parties. These programs usually relate to a digital asset and are embedded in a database called a “blockchain”.
Blockchain = Digital Public Ledger
To understand smart contracts, one must understand blockchain technology. Simply put, a blockchain is a database. The database grows by collecting records, putting them into units and linking the units together.
A “block” is a collection of anonymized records - for example, payments of money or transfers of property. Using a cryptographic signature called a “hash”, each block is chained to the previous block. A string of blocks - or a blockchain - acts as a digital ledger, a copy of which is held by every member of the network.
The accuracy and security of the records on a blockchain are maintained using mathematical procedures, including cryptography. Cryptography is used to anonymize the records on a blockchain, allowing private transactions to occur on a shared ledger, and is central to the consensus process which ensures that all copies of the ledger match each other. (In the case of Bitcoin, the consensus process is called “mining”.)
Importantly, a blockchain is usually a distributed ledger. This means that there is no single entity that controls the information added to or stored on the blockchain. It also means that changes to the blockchain can only be made by universal agreement, making revisions practically impossible, thus ensuring the security of the records stored on the blockchain.
Smart contracts = computer code
The term “smart contract” refers to a piece of software code that is attached to a block (specific record) on a blockchain. Much like a macro applied to a cell (block) in an Excel spreadsheet, this self-executing code generates specific outcomes in response to specific inputs.
The example provided by Szabo in his foundational article is the “humble vending machine” - if you put in the correct amount of money, then the machine dispenses your desired snack. In this example, the contract is “if accurate amount of money received, then snack dispensed” but unless the requirement of “accurate amount of money received” is met, no snack is dispensed. There is no need for trust or a third-party arbiter, which reduces transaction costs.
The two big differences between traditional contracts and smart contracts are that smart contracts are written in computer code and their enforcement is automatic.
Smart contracts are radical because the terms of the contract are contained in software code. In addition, the terms of the contract self-execute: if the necessary conditions are met, then the programmed outcomes occur, without the need for third-party enforcement. Moreover, these terms provide “cryptographic certainty” that the contract has been honoured in the ledgers, databases, and accounts of all the contracting parties.
In addition, most conventional contracts have no direct relationship with their enforcement mechanisms – smart contracts do. At the moment, if A agrees to sell B her car, but after receiving the keys, B refuses to pay, A is forced to rely on the justice system and B’s bank to get the money, or a burley bailiff to recover the car. More recently, software has been used to enforce a contract - for example, buying music through iTunes or subscribing to Netflix. Even in these cases, however, there is no direct link between the contract and the software that enforces the terms. The paper agreement (albeit in an electronic format) is concluded and filed and then the software executes an approximation of the contract’s terms, written in software code.
With all this in mind, how do smart contracts fit into existing contract law? And how will the law likely have to change?
Legal implications of smart contracts
Smart contracts raise a number of legal and practical questions and are likely to drive changes in the law:
- Formation: A foundational question that will have to be answered is: Are smart contracts in fact contracts? It is possible to view smart contracts as simply automatic enforcement mechanisms. The terms that determine the software coding must still be agreed to in a way that provides clarity and certainty, otherwise there is no meeting of the minds, and therefore no deal. Are smart contracts simply evidence of a contract? Are they implied terms of a contract, or terms incorporated by reference? Or, will courts have to rethink how we determine that a contract has been formed?
- Interpretation: If a smart contract is a contract, how does one, specifically a court, interpret its terms? What is the factual matrix of a smart contract? Would evidence of the terms in non-code format (i.e. English text) be excluded by the parol evidence rule? Are these terms a collateral contract? How does one interpret related smart contracts? How do you apply contra proferentem to software code?
- Conditions: How do smart contracts fit within the current understanding of a “condition”? Are they true conditions or conditions precedent, or subsequent? Or are they absolute terms of the contract?
- Remedies: The self-enforcing nature of smart contracts makes certain contract principles very difficult to apply, in particular remedial principles. If they automatically enforce their terms, can smart contracts be voided, deemed voidable or be rescinded? How are mistakes addressed or resolved? What if one of the parties did not understand all of the terms of the agreement or was coerced? Is new law required to impose software “keys” that permit regulators or courts to alter smart contracts? What if a smart contract is unbreachable and its effects irreversible?
- Adjudication: Can processes for the resolution of disputes be automatically commenced?
- Policy: Will there be new duties on companies who use smart contracts? Would these duties be different in consumer agreements or commercial agreements? Is legislation required to regulate the terms permitted in smart contracts?
In short, smart contracts are likely to disrupt the law, just as they are expected to disrupt a number of industries.