March 16, 2020
Smart Contracts were introduced way back in 1994 by Nick Szabo, a cryptographer, computer scientist and legal scholar. Nick, in his paper, proposed the idea of a “computerized protocol that could automatically execute the terms specified in a contract.”
Today, with the development and soaring popularity of the Ethereum blockchain, Smart Contracts have become a buzzword. Implementing and executing these are now a possibility. Today, when applied correctly, smart contracts are indeed game changers across industries.
Yet, still many are confused about what a smart contract entails and whether it’s actually all that smart. Here, in today’s post, we clear up the common misconceptions about smart contracts and help you understand that smart contracts are indeed smart.
This is one of the most oft-quoted words. “Smart contracts are neither smart nor are they contracts. They are just a fancy term for computer code.”
While the above statement may be true in a few cases, in several others, smart contracts share plenty of characteristics with paper contracts. Also, the second part of the name is also correct. Smart contracts are smarter when compared with conventional contracts.
Conventional (or paper) contracts have two main elements like:
Operational Semantics - This is how the contract is interpreted during execution. It specifies the precise actions to be taken by the concerned parties. In a smart contract, the operational semantics are what that are programmed into it.
Denotational Semantics - This refers to the non-operational part of the contract. This is mostly the legal interpretation of the contract. It often includes references to other law documents, etc. For instance, imagine that a lawyer reads your contract. The denotational semantics are what that help him interpret the contract as per legal requirements.
The Denotational Semantics is usually missing from a smart contract. It can also be added to the contract as comments included in the program code.
This is because most people don’t trust others. They don’t believe that the other person will execute his side of the agreement. For instance, two people may have a verbal agreement. Person 1 must provide Person 2 with a particular amount after receiving goods from Person 1. What happens if Person 2 receives the products but denies the arrival of the shipment and refuses to pay?
This is where a contract enters the picture. Take the case of a Smart Contract. If the drawn up contract is a part of an agreement between two people and is signed by all parties, then it means that the parties should execute the contract on the occurrence of a particular trigger.
If smart contracts aren’t followed, you can track the offender using traditional means of mediation, courts, etc.
One of the biggest advantages of smart contracts over traditional paper contracts is that the operational semantics segment of the contract is executed automatically, without human intervention. For instance, a smart contract keeps an eye on the trigger, and if it occurs, it executes the specified actions immediately.
This is the second biggest misconception. People assume that smart contracts are proactive when they are reactive. For instance, people have the perception that smart contracts actively query and scan external environments and then execute instructions accordingly. For instance, a smart contract sends queries to an external database regularly and then changes its state based on the result of the query.
This is far from what happens in reality. The blockchain is transaction based. This is also true for smart contracts that run on top of the blockchain. This means that smart contracts are reactive.
The smart contract is executed only when an external transaction sends a message to the contract. This can be done in two ways:
• An external account (which is either an individual or a person) sends a message to the smart contract.
• Or another smart contract sends a message to the first smart contract.
Another point to be noted here is that the information sent to the smart contract is pretty limited. This means that the smart contract has no access to the file system, network or other processes. The data that the smart contract can access is the data sent in the message.
While a smart contract can call others, experts don’t recommend doing this. Additionally, smart contracts can perform just the basic operations like adding, multiplying, subtracting and dividing. They don’t have the power or potential to handle big data analysis.
So, right now smart contracts are reactive. They have limited information to work with and just a few interaction possibilities.
Just like people talk about “The Blockchain” instead of specifying the particular type of blockchain (like Bitcoin, Ripple, Ethereum, Unero, Hyperledger, etc.). Similarly, when people speak about smart contracts, they assume that there is only one type of smart contract. This is a huge misconception.
There are plenty of blockchains that don’t have any smart contract capabilities at all. Even if they are capable of executing smart contracts, it’s only in limited forms. Additionally, smart contracts on one blockchain are vastly different from the contracts built on another one.
So, there is no one smart contract. When creating smart contract solutions make sure to specify your requirements, and choose the best one that offers you the most functionalities.
For all further queries on blockchain and smart contracts or customized solutions to meet your business requirements, get in touch with Blockshive.com.
Are you ready to leverage the technology of the future, to scale and grow your business?
Get In Touch
For Anything and Everything Related to Blockchain.