Smart Contracts

With the explosion of the cryptocurrency market, the phrase “Smart Contract” (also referred to as “distributed apps”) has become a trending term. What exactly is a “Smart Contract”? What issues to they resolve?
Firstly, the term “smart contract” was first used by Nick Szabo in 1997, long before Bitcoin was even a thing. Szabo is a computer scientist, law scholar and cryptographer. His idea was to use a distributed ledger to store contracts.
Smart contracts are the same as contracts in the real world. The only difference is that they are completely digital. A “smart contract” is actually a small computer program that is stored inside a blockchain.
Let’s take a look at an example to understand how smart contracts work.
Think of the fundraising platform, Kickstarter. Product teams can go to Kickstarter, create a project, set a funding goal and start collecting money from others who believe in the idea.
Kickstarter is essentially a third party that sits between product teams and supporters. This means that both parties must trust Kickstarter to manage their money correctly. If the project is successfully funded, the project team expects Kickstarter to give them the money. On the other hand, supporters want their money to go to the project if it was funded or to get a refund when it hasn’t reached its goals.
Both the product team and the product supports must trust Kickstarter. But the beauty with smart contracts is that a similar system/process can be built that doesn’t require a third-party like Kickstarter.
For our example, what would be the steps be to creating a smart contract?
• We can program the smart contract so that it holds all the received funds until a certain goal is reached.
• The supporters of a project can now transfer their money to the smart contract.
• If the project gets fully funded, the contract automatically passes the money to the creator of the project.
• If the project fails to meet the goal, the money automatically goes back to the supporters.
Because smart contracts are stored on a blockchain, everything is completely distributed. With this technique, no one person or group is in control of the money. But I’m sure you are thinking “Why should we trust a smart contract? Because smart contracts are stored on a blockchain, they inherit some amazing properties.
• They are immutable and
• They are distributed.
Being immutable means that once a smart contract is created, it can never be changed again. So no one can go behind your back and tamper with the code of your contract.
Being distributed means that the output of your contract is validated by everyone on the network. So a single person cannot force the contract to release the funds because other people on the network will spot this attempt and mark it as invalid. Tampering with smart contracts becomes virtually impossible.
There are various use cases for “Smart contracts”, not just in crowdfunding as in our Kickstarter example, consider:
• Banks could use it to issue loans or to offer automatic payments,
• Insurance companies could use it to process certain claims,
• Postal companies could use it for payment on delivery,
• and much more
Where and how you can use smart contracts? At this moment, there are a few blockchains that support smart contracts, but the primarily one is Ethereum. It was specifically created and designed to support smart contracts. The smart contracts can be developed in a programming language called Solidity. This language was created for Ethereum and uses a syntax that is similar to JavaScript. Ripple/XRP is currently expanding its platform to incorporate smart contact creation. This is a very promising advent, due to the exceptionally high transaction speeds of Ripple’s XRP network.

Leave a Reply

Close Menu