If you’ve invested in Ethereum, you need to understand what smart contracts are. People are incredibly optimistic about the technology and there’s good reason for it. Smart contracts significantly expand on the traditional blockchain’s capabilities and the technology has even attracted the attention of several Fortune 500 companies.
Still not convinced? Have a look at Quorum, a fork of Ethereum that JP Morgan developed as a result of interest in Ethereum’s smart contracts.
In this blog post, I go over what smart contracts are before shilling hard for the technology. But seriously, I really do believe in smart contracts.
What’s a smart contract?
At a high level, smart contract technology let’s you run complex instructions on the blockchain. The traditional blockchain allows you to run one kind of instruction, a transaction instruction. Ethereum’s smart contracts, on the other hand, allows you to write instructions using a Turing complete programming language which is incredibly expressive. Just like transactions, every smart contract instruction run by the blockchain is logged by the blockchain.
Think of it like this: when you issue a transaction to Bitcoin’s blockchain, you’re telling the blockchain to subtract money from your account and add money to someone else’s account. When you issue a smart contract program to Ethereum’ blockchain, you’re telling the blockchain you want to execute this program and this could mean doing anything from simple transactions to multiplying numbers to image editing. That being said, you probably wouldn’t run complex computer algorithms on the blockchain since if it would be quite expensive and you don’t care for your instructions to be logged in a permanent public ledger. As such, most smart contracts would probably only use simple logic to perform economic activities.
If a traditional blockchain is a system capable of moving numbers around, then a smart-contract-enabled blockchain is a computer.
So what makes this significant? Well now that your blockchain is a computer and not just an ultra secure ledger, you’ll be able to do many many more things on the blockchain besides managing a currency system. One compelling application is using the blockchain for escrow services. For example, if you wanted to buy an Overwatch account, you could create a smart contract that would only issue a payment if the other party provided the account’s credentials and the smart contract has verified that the credentials are accurate. Even better, if there was a conflict after a transaction has occurred, either party can use the blockchain as irrefutable proof of misconduct.
The smart-contract-enabled blockchain is not only a secure and transparent broker, it’s also a super cheap one. Brokers these days tend to charge exorbitant fees because many are monopolistic entities that can get away with charging high fees. Consider Airbnb, Amazon, and Uber.
How do smart contracts work on Ethereum?
I just wanted to include a quick note on how Ethereum’s smart contracts work.
Ethereum allows smart contracts to be written using a Turing complete programming language. A popular implementation of such a language is Solidity, developed by the Ethereum team themselves. Smart contract code is executed by the Ethereum Virtual Machine (EVM), which runs as part of every full Ethereum node.
Every single operation that is excuted inside the EVM is simultaneously executed by every full node in the network. This means that computational steps on the EVM are expensive and it’s recommended that you only run simple programs.
Computational costs are measured by a resource called gas. Each operation you do on the EVM costs gas and the gas consumed by your contract needs to be paid in ether based on a gas/ether price that changes dynamically.
What’s so great about smart contracts?
Smart contracts are great because they allow you to do many useful things on the blockchain cheaply, transparently, and securely. Some would even argue that smart contracts will cause an economic paradigm shift where the blockchain supplants real world middlemen.
Cutting out the middlemen for Internet services
One example is the replacement of Internet broker companies such as Airbnb, Amazon, and Uber with smart contracts. A service like Airbnb is desirable because it obviates the need for the host and the guest to trust each other, they need only trust Airbnb. With smart contracts, the host and the guest can forego Airbnb and put their trust on the blockchain. In doing so, they avoid paying Airbnb’s high brokering fees.
When there’s a dispute after the contract has concluded (funds transfered and keys exchanged hands), such as if the host kicks the guest out or the guest squats, either party can go to the authorities and use the blockchain as irrefutable proof of the contract’s terms and the opposing parties wrongdoings.
Cutting out the middlemen in real estate
Real estate is another example of an industry that could be improved via smart contracts. The industry is notorious for high middleman fees because of the numerous intermediaries that need to be involved in order to complete a transaction. According to the International Blockchain Real Estate Association (IBREA), using smart contracts means many of these intermediaries such as brokers, government property databases, title companies, escrow companies, inspectors and appraisers, and notary publics, would no longer be needed.
Secure and fair betting and lotteries
Besides cutting out middleman fees, smart contracts are great when transparency and fairness are desired. Good examples include betting and lottery services. It’s not a stretch to assume people would prefer to bet their money with a betting house using the blockchain over a betting house using a black box system. The same goes for lotteries.
Secure and fair voting
Another more important example of an activity where transparency and fairness are desired is voting. In the last US election cycle, there have been numerous claims of voter fraud. These allegations have undermined trust and also highlighted an inherent flaw in the election process: it’s incredibly hard for most individuals in the electorate to independently verify that vote counting has been fair. Conducting an election on the blockchain will allow any citizen to quickly and independently verify fairness. This is huge for maintaining democracies.
Support and interest from Fortune 500 companies
Finally, instead of pondering what smart contracts could potentially be used for, here’s something that’s already happened. Hundreds of companies, including many Fortune 500 companies, are backing smart contract technology through membership in the Enterprise Ethereum Alliance. These companies include JP Morgan, Microsoft, Deloitte, and the National Back of Canada.
As I’ve mentioned before, JP Morgan even developed their own version of Ethereum called Quorum.
Smart contracts in the short term
According to Andreas Antonopoulos, in the long run, the blockchain is much more than just a currency system. There’re so many game-changing applications for the blockchain that haven’t been realized yet. However, these applications are not possible without widespread adoption of the technology and right now, we’re not there yet.
Antonopoulos lays out three criteria that a smart contract product needs to meet in order to be successful:
- A viable market
- Sequencing, i.e. having the right prerequisites in place
He believes that criteria 1 has been met while the criteria 2 and 3 have not. There is no doubt that there will be demand for smart contract products given the benefits of using the blockchain. Unfortunately, Antonopoulos believes there isn’t enough blockchain adoption for smart contract products to succeed. This won’t stop entrepreneurs from trying and there’ll be a bunch of new smart contract companies fueled by enthusiastic (perhaps overly so) early investors. Just look at the ridiculous amounts of money many recent ICOs have raised.
Since smart-contract-powered applications haven’t been properly tested and there’s basically only a bunch of ideas championed by fledgling startups floating around out there, it’s definitely prudent to be cautious in this space.
Smart contracts in the long term
Besides the risk of unforeseen scaling issues or security flaws, there’s good reason to be incredibly optimistic for the future of smart contracts.