Smart Contract Technology

Avatar
Johnny Walker
Chief Editor
22 February 2018 Updated on  Обновлено   1 February 2023

A smart contract is an algorithm designed for concluding and maintaining contracts that are automatically performed in a blockchain. These contracts are a code contained in the distributed ledger which is managed by all network participants. The smart contract technology allows exchanging goods and services, money and property, with no mediators.

Smart contracts allow safe transactions without involving banks or governmental authorities. For the parties, these transactions are transparent and irreversible. Smart contracts carry information about the obligations of the parties and penalties that can be applied in case of non-fulfilment of such obligations. Also, smart contracts ensure automatic performance of all terms and conditions.

Smart Contract

Historical background

In 1994, American scientist Nick Szabo, proposed the concept of smart contracts, describing them as a protocol that automatically processes and controls transactions based on math algorithms. In those times, however, there were no decentralized tools that could realize the concept. Long after, when the first cryptocurrency, Bitcoin, and blockchain appeared, these concepts could be turned into reality. Bitcoin protocol included some rules of smart contracts. Nevertheless, the majority of today’s blockchains are Turing-incomplete, so their contracts constitute quite simple structures.

It was Ethereum that made possible widespread practical use of smart contracts. In 2013, Vitalik Buterin, co-founder of Ethereum, came up with the idea that Bitcoin had not been designed for smart contracts, so it was inappropriate to be used as the main protocol for them. Due to that, he decided to develop a protocol from scratch and create one that could be perfectly suitable for smart contracts.

How smart contracts work

Most frequently, a smart contract is embedded into a blockchain, with its logic deployed in a block that connects all messages related to a certain smart contract. Messages can be inputs or outputs of a smart contract code, and perform actions beyond a blockchain — e.g. in reality. Smart contract design must include the following essentials:

  • Electronic signature methods based on public and private keys that each of the parties must have;
  • Private decentralized environment into which all smart contracts are deployed and which maintains inputs and outputs for oracles ensuring connection with the external environment;
  • Scope of contract and performance tools (oracles, cryptocurrency accounts, etc.);
  • Clearly stated execution conditions signed by parties, and data origin validity.

Smart contract types

Smart contracts vary in automation level and break down into the following categories:

  1. Fully automated smart contracts.
  2. Smart contracts with paper files.
  3. Smart contracts that are essentially on paper, but with some conditions coded (e.g. concerning automation of payments only).

Blockchain-based solutions are only developing and evolving, so true complex smart contracts cannot be applied in practice today. To date, the majority of smart contracts belongs to the third type — only certain terms are automated (e.g. exchanging money for property rights).

Smart Contracts

Speaking of the potential of smart contracts, there are lots of fields where to apply them. In one of the next articles, we will look into all possible ways of using smart contracts. Now, smart contracts are transforming our society, having become the technical foundation for changes.

map

Feel Free to Contact Us