What is a Smart Contract?
Smart Contracts allow for a variety of transactions to take place in a transparent and trustless way. This is done by enforcing agreements through the use of computer code. Some Smart Contracts you can interact with right now include gambling games, decentralized cryptocurrency exchanges, and buying into some new start-ups. As time goes on, expect to see Smart Contracts being applied to a variety of industries.
Important Note!Smart Contracts use a Blockchain to record transactions. For the Ethereum Blockchain, a Smart Contract has it’s own address similar to a Wallet address. People send digital assets or data to the Smart Contract’s address and it executes code to process the transaction. Be on the lookout for future posts that go into more detail and provide real code examples!
3 Examples of Current Smart Contracts
- Gambling Games – These have become the most popular and abundant Smart Contracts so far. The Smart Contracts that run these games are transparent and anyone can look at the transactions going into and out of them. This means you can easily see if the house were cheating, or if anything fishy is going on. 2 of my current favorite Gambling DAPPs are Rouleth (not available in the US) and vDice. I can trust the games without needing any background on the creators. I looked through the Smart Contract and saw exactly how the logic worked. It is also nice that I do not need to create accounts to play. I simply make a transaction to the Smart Contract and it executes the game. This provides for a more seamless experience when compared to sites that require account creation and connecting bank accounts.
- Decentralized Cryptocurrency Exchanges – Places where people can exchange certain Cryptocurrencies with each other in a trustless environment. When you create a buy/sell order, it is logged in the Smart Contract and then displayed on the website. Another user can fulfill your order and the Smart Contract handles the exchanging of assets. There is no need to trust each other because the Smart Contract takes care of everything. There have also been a few posts in Reddit where users who wanted to exchange certain Tokens have created their own Smart Contract that handles transfers for that specific Token.
- Investing – When a company runs an Initial Coin Offering, their Tokens are generated through a Smart Contract. Benefits like dividends/discounts/profit sharing are built into this Smart Contract. The Smart Contract logs how much you have invested and your Wallet address. After the ICO is finished, it calculates the total amounts invested and then disperses your share of that company’s Token to the Wallet address you provided.
What about the future potential of Smart Contracts?
Let your imagination run wild! With the Internet of Things (IoT) becoming mainstream, Smart Contracts could play a massive role in how we interact with everyday objects. Let’s look at the following examples:
- Hotel Rooms – The transfer is directly from you to the Hotel. There is no Visa or payment merchant to take fees in the middle, which hopefully means lower hotel rates. The Hotel could also allow you to use any Cryptocurrency they want, so no worries on exchange rates if you are traveling internationally. A a person would not need to check you in either and hand you key cards because the Smart Contract would control the locks. Once the room expires the Smart Contract locks the door. This would likely be done through a private PIN that would expire.
A cool feature the Hotel could provide is their own Token that would get sent to your Wallet address at the end of your stay. This means you do not need to keep up with multiple user accounts and remember all of the places you have points to spend.
- Car Title – You buy an awesome new car and get a loan through your bank. The bank uses a Smart Contract to handle the loan, including the transfer of the Title once it’s paid off. This car really is new and awesome (it’s a Tesla), so it’s also connected to the Smart Contract.
The bank has coded the Smart Contract so that if a payment goes delinquent for a certain period of time, the car does not start. Once a payment is made, the car can be started again.
Once you make the final payment, you will not need to wait weeks for the bank to process everything. The Smart Contract sees that the balance is $0 and transfers the Title to your Wallet address. This basically means you would get the title the same day it’s paid off.
- Content Distribution – This applies to anything that can be transferred or consumed online, which includes videos, pictures, artwork, music, etc. If you create awesome wallpapers for computers, you could code a Smart Contract that handles this exchange for you.
This may sound similar to how it works right now, but you are cutting out the middle man. This also takes down hurdles from being in different locations. There is no middle man to take a cut for processing payments and no exchange rates to worry about. There is also no maintenance once it is deployed because the Smart Contract lives on a decentralized network. Your content should always be available for purchase (assuming the website itself stays online).
These examples are just the tip of the iceberg though. Expect to see a major shift in the financial industry and more assets being ‘digitalized’ and exchanged through the use of Smart Contracts.
So, do Smart Contracts hold up in the court of law?
And just like that, Pandora’s box was opened and the universe was sucked into a black hole. There are a lot of debates going on about ‘Code is law’, and I think it is way too early to make any decisions. I do believe that Smart Contracts will hold up in court as time goes on, but it will likely be a decision that gets made after something bad happens.
I think one of the big issues right now is that you need some basic programming knowledge to be able to read through and understand a basic Smart Contract. That is the other hurdle, is that these are not written in ‘lawyer speak’, they are ‘computer speak’ . As an example, here is a snippet from a decentralized game I am working on:
*Written in Solidity, which is a common language used for the Ethereum Blockchain
Smart Contracts are one of the most interesting developments in the Blockchain universe. They will clearly have a major part in the IoT revolution that is right around the corner as well. Whether you want to gamble, trade currencies, or make your car payments, you will likely be interacting with a Smart Contract.
For discussion, what Smart Contracts have you come across? What kind of Smart Contract could you envision in the future?