Smart contracts are decentralized self-executing contracts. The idea was initially described by Nick Szabo in 1994. They are essentially an escrow vending machine that eliminates or reduces the need for third parties. This is because smart contracts are irreversible and trackable.
So what is needed to create a smart contract?
- Subject of the contract
- Digital signatures – All parties must sign the contract with their private keys
- Contract terms – After the trigger happens, the contract is performed in accordance with the contract terms. An oracle can be used to feed a smart contract real-world information
- Decentralized platform- This is where the contract is deployed on the Blockchain and is distributed to the nodes of the platform
Which industries could benefit from using smart contracts?
- Real estate
- Bank Systems
- Health Care
- Entertainment Industry
- Estate planning
Crowdfunding is another platform where the use of third parties helps facilitate donations, or refunds if the terms are not completed. A smart contract can eliminate the need for this third party. You could set up a few contracts for portions of the donations to be drawn at different stages of completion of the project.
Real estate construction could work the same way. The general contractor would have to sign off that he paid his subcontractors, preventing a mechanics lien being placed on the property if he doesn’t pay them and tries to run off with the money. This is a great thing for newbies in the industry that don’t know to ask for this to be included in contracts. If subcontractors don’t have an experienced lawyer who knows to add those contract terms, this mistake could cost them thousands of dollars because they wouldn’t be able to sell the property until the liens are paid in full.
Some of the benefits of using smart contracts are reducing fees by cutting out middlemen, efficiency, encrypted security. However, the benefits do come with some downsides, as any new technology does.
Currently, smart contracts still have to take into effect human error when programming the contract. Programming is expensive, and there can be issues with legality. Smart contracts can’t be used without some aspect of human interaction double checking the information. Programmers need to be used for the creation of the contract, but platforms like Confideal helps those without programming skills audit smart contract code.
Different Blockchains to Build Upon
Ethereum is the most popular smart contracts platform. Most are built upon using the ERC-20 token standard. However, this has had some bugs that led to significant losses in the industry. Essentially if you send tokens to a decentralized exchange contract, the exchange will receive them but will not credit the new tokens to your balance. If the exchange contract does not implement an emergency token extraction function, you can’t get your tokens back resulting in a permanent loss of the tokens.
The EVM or Ethereum Virtual Machine is the engine that all smart contracts use in the Ethereum network. The EVM is a 256-bit virtual machine. To code smart contracts in EVM, you need to learn Solidity. Gas is also essential to know about when using Ethereum, it is the unit that measures the amount of computational effort it will take to execute certain operations. It essentially fuels the EVM. Transactions, smart contracts, and ICOs all use some amount of gas which is used to calculate the number of fees to be paid to the network. When someone submits a smart contract, it has a pre-determined gas value, and each step of the contract requires a certain amount of gas to execute.
EOS is striving to become a decentralized operating system which can support industrial-scale applications. They are claiming to eliminate transaction fees and conduct millions of transactions per second. However, EOS Distributed Proof of Stake system has already proved problematic at its mainnet launch.
Stellar allows moving money across the border for fractions of a penny within 3-5 seconds but unlike Etherum Stellar Smart Contracts are not Turing complete.
Cardano’s approach is unique since it is built on scientific philosophy and peer-reviewed academic research. They aim to increase scalability via their Ouroboros proof of stake consensus mechanism. To code their smart contracts, you need to use Plutus which is based on Haskell.
Hyperledger Fabric is an open source collaborative effort to advance cross-industry blockchains hosted by The Linux Foundation. IBM’s Fabric with the Hyperledger family is designed to allow enterprises to build an individual blockchain network that can quickly scale to more than 1,000 transactions per second.