Smart contracts were first proposed by an American computer scientist, legal scholar, and cryptographer Nick Szabo, who coined the smart contract term.

What are smart contracts?

A smart contract, also known as a cryptocontract, is a computer code running on top of a blockchain containing a set of rules under which the parties to that smart contract agree to interact with each other. And automatically execute when predetermined terms and conditions are met. The smart contract code facilitates, verifies, and enforces the negotiation or performance of an agreement or transaction. It is the simplest form of decentralized automation.

Smart contracts are:

  • self executed, execute automatically if pre-defined rules met
  • immutable, which means a smart contract can never be changed and no one can tamper with or break a contract.
  • distributed, which means that the outcome of the contract is validated by everyone in the network, just like any transaction on a blockchain.
  • Function as ‘multi-signature’ accounts, so that funds are spent only when a required percentage of people agree
  • Manage agreements between users, say, if Alice sends some cryptocurrency to a node 
  • Provide utility to other contracts (similar to how a software library works)
  • Store information about an application, such as contract transactions execution history, domain registration information or membership records.

How do smart contracts work?

Smart contract is a computer program that runs within a blockchain. It contains a set of rules that constitute an agreement made between two or more parties. It gets executed when these rules are met. It’s like a regular application that implements some business rules, only it uses a blockchain as a database.

Let’s see how this plays out in a supply chain example. Buyer B wants to buy something from Seller A, so she puts money in an escrow account. Seller A will use Shipper C to deliver the product to Buyer B. When Buyer B receives the item, the money in escrow will be released to Seller A and Shipper C. If Buyer B doesn’t receive the shipment by Date Z, the money in escrow will be returned. When this transaction is executed, Manufacturer G is notified to create another of the items that were sold to increase supply. All this is done automatically.


The term smart contract is a bit confusing since a smart contract is neither smart nor are they to be confused with a legal contract.

  • I hate to disappoint you those smart contracts also have a misguiding name they’re not really smart as the word smart, and they’re not really contracts as in the pages of pages of legalese, where you sign at the our mandate not that kind of contract there are really pieces of code that codify business logic and at the core they facilitate three functions one they store rules two they verify rules and three they self executable.
  • A smart contract can only be as smart as the people coding taking into account all available information at the time of coding.