What are Smart Contracts?
Smart contracts are, in non-legal sense, computer scripts that execute pre-defined outcomes via their embedded logic, according to the inputs received by them. They may or may not share the characteristics of legal contracts, depending on how the smart contracts are defined and coded, and how they are used.
A simple analogy would be how a beverage vending machine works. The machine will only dispense the beverage that you have selected (one of the inputs that is sent to the machine) if and only if you have inserted the correct amount of money (the other input required for the operation of the vending machine). The vending machine will not dispense if the money inserted is insufficient for the price of the chosen beverage, nor will it dispense other types of beverages that are not of your choosing.
“Smart Contracts as Conditional Transactions”
Put in another way, if your purchase of a beverage from the vending machine is the start of a transaction, then the outcome of this transaction would be conditional upon the inputs to these transactions. Similarly, smart contracts have an essential feature in that they have elements of conditional transactions, where the outcomes of the smart contracts are conditioned upon the inputs to the smart contracts
“Making Conditional Transactions Smart: Self-execution”
So what exactly makes a smart contract “smart”? In the vending machine example, once you provided payment for the beverage chosen, the machine will automatically dispense the beverage that you have paid for. Similarly, such self-execution of contractual terms is what differentiates smart contracts from normal electronic contracts being represented and stored in a digital format.
Smart Contracts and Blockchains
Smart contracts are made possible with the advent of blockchain technologies, due to the following essential features of a blockchain:
- Secures transactions in an immutable fashion
- Shared among a distributed network of computers to ensure availability of the records
- Leverages cryptography to ensure that only validated transactions can be entered into the records
This ensures that any smart contracts and any of their related transactions that are made on a blockchain would be also be immutable, distributed to maintain audit trails, and validated according to the blockchain protocol rules. Forgeries will be rejected by the validators since the cryptographic signatures are not correct, while all validated changes and updates to any existing contract will be trackable as part of the blockchain history.
Bridging Smart Contracts to Legal Contracts
For a smart contract to take on attributes of a legal contract, the following essential features of a legal contract must be present:
- Valid offer, and acceptance of the said offer
- Intention from all signatories to create legal relations with each other