Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

What is a smart contract?

The BlockchainHub "A smart contract 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. If and when the pre-defined rules are met, the agreement is automatically enforced. 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." [1]

Simply put, a smart contract is a distributed trusted program that runs on a blockchain network . It , it is the business logic of a blockchain application [2]. It is distributed because all the network participants not only have a copy of the smart contract, but they also execute the smart contract. It is trusted because once the participants execute the smart contract, they must have the same outcome and come to consensus. Once the criteria on the blockchain network is met, then its code defined in the smart contract will automatically execute, applying any business logic contained as predifined built-in rules.

There are different names for a smart contract, depending on the blockchain platform. Smart contracts were first proposed by Nick Szabo in "The Idea of Smart Contracts - Nick Szabo - Originally published in 1997"[3], where he coined the term. Ethereum was first to establish the term, “smart contract” for their blockchain platform and due to openness and its explosive popularity that term stuck. However, other blockchain platforms refer to a smart contact differently. For example, Hyperledger Fabric refers to smart contacts as, “Chaincode”. Whereas, Hyperledger Sawtooth refers to smart contacts as, “Transaction Families”. Yet, “Smart contact” can be used as a general term for code that runs on a blockchain network and that is how we’ll use it going forward.

...