What is a Smart Contract?


Site Admin
Apr 2017
Smart Contracts

A smart contract is the simplest form of decentralized automation, and is most easily and accurately defined as follows: a smart contract is a mechanism involving digital assets and two or more parties, where some or all of the parties put assets in and assets are automatically redistributed among those parties according to a formula based on certain data that is not known at the time the contract is initiated.

One example of a smart contract would be an employment agreement: A wants to pay $500 to B to build a website. The contract would work as follows: A puts $500 into the contract, and the funds are locked up. When B finishes the website, B can send a message to the contract asking to unlock the funds. If A agrees, the funds are released. If B decides not to finish the website, B can quit by sending a message to relinquish the funds. If B claims that he finished the website, but A does not agree, then after a 7-day waiting period it’s up to judge J to provide a verdict in A or B’s favor.

The key property of a smart contract is simple: there is only a fixed number of parties. The parties do not all have to be known at initialization-time; a sell order, where A offers to sell 50 units of asset A to anyone who can provide 10 units of asset B, is also a smart contract. Smart contracts can run on forever; hedging contracts and escrow contracts are good examples there. However, smart contracts that run on forever should still have a fixed number of parties (eg. an entire decentralized exchange is not a smart contract), and contracts that are not intended to exist forever are smart contracts because existing for a finite time necessarily implies the involvement of a finite number of parties.

Note that there is one gray area here: contracts which are finite on one side, but infinite on the other side. For example, if I want to hedge the value of my digital assets, I might want to create a contract where anyone can freely enter and leave. Hence, the other side of the contract, the parties that are speculating on the asset at 2x leverage, has an unbounded number of parties, but my side of the contract does not. Here, I propose the following divide: if the side with a bounded number of parties is the side that intends to receive a specific service (ie. is a consumer), then it is a smart contract; however, if the side with a bounded number of parties is just in it for profit (ie. is a producer), then it is not.

Source: Vitalik Buterin
  • Smart contracts aren’t smart and they don’t have anything to do with “self-thinking” or artificial intelligence – we will take a closer look at this later on in the article
  • The vast majority of blockchains available today aren’t capable of running smart contracts because they weren’t built for it
This article will focus on the Ethereum blockchain, since that’s the one that has been specifically built for complex, Turning complete smart contracts – making it the number one platform for this very purpose.
It,s a program, which govern financial relations between a partners.
F.E. Let's assume, that you and me was decided to invest 100K$ in perspective project. But you will invest 70K$, and me is 30K$ only.
Of course, You must receive 70% of profit from this project, and i will receive the rest 30%

We make the smart contract - the program, wich will help us to divide the profit. It connect to crypto-currency account of project, and it will divide all of entering money. It will send 70$ from each 100$ to your account, and send 30$ from each 100$ to my account. Automatically. Without fraud

It's if in simple words
A smart contract is just like the milestone payment on the freelancer.com. You have the amount in the hands of the third party which would be released on the work done by employee hired by the employer. The payment would be released by the mutual understanding of the clients. A good way to understand it!