What are Smart Contracts and their implications with Blockchain technology? This article will provide you an overview of how those programming languages interact with Blockchain.
Distributed ledgers have prepared the ground for the ultimate launch of smart contracts, which are commonly known as computer programs that run automatically, without the need for human intervention or AI to perform a huge variety of activities.
But it is worthy of investigating the reason for the hype for these automated contracts: are they really smarter than their paper-based ancestors?
Computerisation of contractual responsibilities highly reduces transaction costs and increases efficiency, but to what extent smart contracts can change the way we have been operating until now?
To perform this analysis and to try to come to some still not definitive conclusion, we need to dig deeper into the concept of contract, its relationship with Distributed Ledger Technology (DLT), and the historical origin of this juridical institution.
Bit Gold and the origin of the Smart Contracts idea
Nick Szabo, an American computer scientist, was the forerunner of cryptocurrencies when he invented a virtual currency called Bit Gold in 1998, a decade before the invention of Bitcoin.
Szabo’s attempt to create a cryptocurrency is generally considered the precursor to Satoshi Nakamoto’s Bitcoin, although Bit Gold never had a concrete application.
Ethereum completed the cycle in 2015, giving life to the first Blockchain platform able to overcome the mere cryptocurrency microcosm.
He then defined smart contracts as a computerised protocol that executes the terms of a contract to satisfy common contractual conditions minimising the need for intermediaries, arbitration and enforcement costs and the risk of fraud loss.
Although the word smart can recall the concept of Artificial Intelligence (AI), in its embryonic state, a smart contract does not seem to relate to AI, and here is why.
On the contrary, it is pretty robotic: the author just states that If X happens, then Y will occur as a result of X, and the contract simply applies this postulate.
Rather than being smart or intelligent, a smart contract runs without the need for human intervention as its logic is very straightforward and only intended to reinforce the execution of the below obligation.
AI is meant to support human intelligence; smart contracts are more like a rudimentary and passive bundle of tech, which can indeed cooperate with AI but work at diametric opposites.
The future will likely bring to life all the advantages of the interaction between mechanical automation and the more knowledgeable and agile AI: it seems probable that by acting synergically with each other, they might identify smart contracts’ weaknesses, such as defects in the formation of contracts or the existence of illegal practices.
Defining Smart Contracts
At the current stage, a myriad of definitions has been elaborated to cover the concept of smart contracts without unanimous consensus.
Overall, they are considered software, a piece of computer code, self-executing electronic instructions, or simply just contracts that are expressed in a code and automatically executed by a computer and therefore without the need for human intervention.
Surely, they can perform transactions of cryptocurrency exchanges, run online gambling programs, and, more recently, exchange various types of collectables among participants on the distributed platform.
If no official definition is provided, more clarity regards the main features of smart contracts:
- the automaticity (the obligations under the contract are performed automatically by the software upon the occurrence- or the non-occurrence– of an event),
- the fact that the computer program is disposed on a distributed ledger,
- the relationship between the parties arising from that is legally enforceable.
The State of Arizona rightly said it is an event-driven program, as the automation is triggered normally by the non-fulfilment of an obligation, often a payment.
The automaticity of a contract is already a novelty compared to the oldest traditional version: the automation of a contractual obligation by software implies translating that obligation into computer code, following a conditional logic (if X, then Y is a typical example).
An example of Smart Contracts
The apparently similar cases of automated bank payments (direct debits on a scheduled date and other forms of online shopping) slightly differ from the ultimate form of automation we are dealing with here; it is pretty clear how human intervention is still present although limited.
One or more parties can decide whether and when to stop the obligation of direct debit; for instance, in online shopping, the picking and delivery of goods are normally performed by a human being too, which does not quite match the smart contract.
Automaticity is strictly linked to DLT: the contractual obligations expressed in computer code are guaranteed because the parties cannot alter the code once the program is deployed on the distributed ledger.
No one can therefore interrupt the performance of the computer program once it is triggered.
In regards to their legal enforceability, more serious analysis is required…