Understanding Smart Contract for non technical person is impossible. I have worked on Simplest explanation for Students. Please do share your review
Let us start from What is “Contract”? Basics of every Contract
1. PARTIES (1–1,1–N,N–N)
2. Variables
3. Conditions
4. Agree Sign PARTIES
https://image.slidesharecdn.com/whatissmartcontractsechai002-180407121842/95/explaining-what-is-smart-contracts-2-638.jpg?cb=1523157610Let us take example Design “Logo”Most of us have visited FreeLancer website where Merchants/Clients post their requirement and respective community bid for the project.
Here are the few variables that they agree upon before they start to work together.
1. No. of PARTIES: 2 (A–B) 2. Variables - No. of Design Option
- Advance Amount (P1)
- After Submitting Option (P2)
- After Completion (P3)
- No of times Changes
- Time Period (First option and Every Changes)
3. Conditions - Release Advance on Sign (Release P1)
- Get No. of Options (Release P2)
- Select One - Ask for Changes
- Finalize (Release P3)
- Cancel Contract
4. Agree Sign of PARTIEShttps://image.slidesharecdn.com/whatissmartcontractsechai002-180407121842/95/explaining-what-is-smart-contracts-3-638.jpg?cb=1523157610Now what is the Real Problem? We all know most of the projects go in conflict/disputes. Why Contracts have disputes? Here are the 2 reasons for it.
1. Ambiguous Elements - Lots of Changes
- Dont Like Colors
- Unforeseen events
2.Non – Ambiguous - No. of Days
- Money - Design Option
https://image.slidesharecdn.com/whatissmartcontractsechai002-180407121842/95/explaining-what-is-smart-contracts-4-638.jpg?cb=1523157610
What is Major Missing?If everything goes well, then everything is perfect. But the problem arises in case of Disputes. So we need Third Party:
ENFORCER of CONTRACT or VERIFIER to judge the Dispute based on the available data.
Here comes the Ethereum, Smart Contracts.When you don’t have THIRD PARTY Verifier. Both will Push Variables and get Next Contract Condition executed. But Criteria is Both Should have same Code on their Server.
Problem : If there are only 2 SERVERS. It can be easily fraud by A/B Parties by Hacking or DDoS Attack. They will do this for their own Benefit.
Solution : A & B Party have to Broadcast Variables to ETH Network. Entire Network will have the Same Code. More than 51% should Agree on Broadcasted Values, and Code will execute next Condition.
Central Authority has Power to Change Condition, Variable or Stop Network. Distributed Authority Conditions are consistent, Variables need to be Broadcasted and Verified by Multiple Servers.
People Who have contributed their Servers needs Financial Incentive to Run and Verify Contracts. They are rewarded GAS in ETH Amount of Code to be executed per Contract decides GAS incentive.
https://image.slidesharecdn.com/whatissmartcontractsechai002-180407121842/95/explaining-what-is-smart-contracts-10-638.jpg?cb=1523157610Crypto Currency works in the following way.
Example :1. Send Transaction Between A-B : It is done by Crypto : Bitcoin.
2. FreeLancer.com (It will have milestones and conditions) : It is done by Crypto : Ethereum Smart Contracts.
https://image.slidesharecdn.com/whatissmartcontractsechai002-180407121842/95/explaining-what-is-smart-contracts-11-638.jpg?cb=1523157610