In simple words smart contracts are self-executing computer programs running on blockchain platforms. The most famous of them is Ethereum which was meant for creating and launching complex and Turing-complete smart contracts. Nowadays they are mostly used for currency transactions and cryptocurrency crowdfunding or crowdsales (ICO) but in the future they can become an alternative for written contracts in many fields. How do they work?
In fact smart contracts work similar to written contracts, but also have their own special features:
Like a written contract, a smart contract should include names and addresses of the beneficiaries. If you're planning to launch a crypto crowdfunding campaign (ICO), you'll need to publish crypto-tokens to exchange them for cryptocurrency and to raise funds. So, your smart contract should also include token sales schedule and their amount, probably some other terms and conditions important to your investors. If it's necessary you can add different functions like "refund" or "additional emission of tokens" or "the right to suspend the crowdsale". Those functions work like additional terms in "real" contracts.
You can verify smart-contracts with an e-signuture or multsignuture if there are many people involved.
But what are the differences? The first one is obvious. Smart contract are coded not written. Second, they can exist only in a decentralized blockchain structure. Third, they have their own advantages and disadvantages connected with their digital origins. The limitations of smart contracts
Smarts contracts are still very new and thus they have some restrictions in their functionality: Programming.
That may seem obvious but besides a good lawyer you'll need an experienced coder to make a safe, steady-working and failproof smart contract. No turning back.
Due to the nature of the blockchain it's impossible to stop a contract once it's set to execute. It's also impossible to fix it in real time because it's not interactive. Its bugs can be harmless or result in rather severe consequences like loosing all the currency. Oracles.
Some smarts contracts can function by themselves and need no information outside their native "home" blockchain. But others need to interact with the real world connecting with external APIs, databases, banking networks, etc. They can't do that on their own and need special applications called Oracles. So you have to be sure that Oracle is 100% safe and provides only trusted data. Simplicity.
It means that their complexity is still limited. You can't just yet describe with the code really complicated terms or conditions like it's done while drafting a written contract. They also can't take into consideration new data or variables other that were specified beforehand. That means they can be really smart but not intelligent meaning that they don't have AI or some kind of virtual "brain". The benefits of smart contracts
Though smart contracts aren't perfect and still need some improvements, it's still a very promising and advanced technology that'll probably change the world one day. There are some reasons for it:
- Safety. They're encrypted and stored in the blockchain that can't be hacked and destroyed. Their code cannot be changed or corrupted by the malicious third party. The data stored in blockchain can't be lost.
- Total transparency. The blockchain acts like a public ledger for every transaction ever made.
- Flexibility. In the nearest future smart contracts will certainly become more complexed and suitable for everyday use.
- No middlemen or centralized entities. That means lower fees, faster execution, and more safety as the human factor is excluded. And less bureaucracy and paper work of course. In wide terms that means more democracy and financial freedom to everyone.