If you have anything to do with ICOs, virtual currencies or blockchain in general, you probably see the term “smart contract” multiple times a day but have you ever questioned yourself what are smart contacts.
However, as with any new concept, it does happen that the very people who use it on a daily basis might not have a good grasp of what it actually stands for. If you feel this way about “smart contract”, read on.
A traditional paper contract defines the relationship between two or more entities (business or otherwise) who are entering into some sort of cooperation or transaction. A contract might foresee the processes, legal terms, fees, or almost any other aspect of the interaction between the parties who are willing to cooperate.
For the contract to have value, parties signing it must also be able to trust that the terms and conditions that have been agreed upon will be adhered to and enforced, should that be necessary.
Enforcing, however, does not come easy with traditional contracts, as a sheet of paper cannot enforce anything. In the world of traditional contracts, this function is performed by government bodies.
Due to complexity in ensuring enforcement traditional contracts are rarely adhered to 100%.
A smart contract is similar to a traditional contract in many ways as it performs a similar basic function: it sets the rules of the game.
However, it also has one vital difference: adherence to the agreed terms and conditions are automatically enforced with cryptographic code.
Since a smart contract essentially is a piece of code, parties signing one have full trust that the contract, once signed, will be carried out exactly as agreed.
Enforcement is automatic and there is no need to have a 3rd party acting as an arbiter.
History of smart contracts
The foundation for the smart contract was set by a computer scientist Nick Szabo. In 1993 he initially generated it for data or value input, originally designed for a vending machine.
The object of the contract was a physical good — a snack.
Now, more than 20 years later Ethereum platform offers the ability to make smart contracts on much more.
Basics of operation
The modern use of smart contract was initially started by Bitcoin. The idea was to enable transfer of information from one person to another. The information itself was rather simplistic and included only few pieces of data: the sender, the number of bitcoins being sent, and the recipient.
Nodes of the Bitcoin network would only approve this transfer of information if certain pre-coded conditions were met.
The Ethereum network took this idea and extended it further. It is not restricted to act merely as a decentralized register of transactions, but can include whole pieces of computer code which is executed upon meeting certain, predetermined conditions.
This platform was created to enable developers to create additional programs and applications with their own internal logic.
And since everyone can create their own smart contract, there is little to restrict what it can be used for: commercial transactions, blockchain based applications or currencies.
A smart contract on Ethereum network may:
· Function as a multi-signature account. Funds held in such multi-sig account can only be spent if a pre-determined percentage of people who have access to this wallet approve the transaction.
· Execute transactions between users, ensuring that both sides of the bargain are upheld.
· Act as a software library, providing utility to other contracts.
· Act as information store for applications on the blockchain.