A smart contract is just like an old-fashioned verbal or paper contract except that its conditions can be met digitally. Smart contracts are not new, but they are newly relevant (and a bit overhyped) because they are an awesome, non-cryptocurrency use of blockchain technology.
You've likely heard of blockchain. It's the underlying technology that powers bitcoin and other cryptocurrencies. Everyone is talking about blockchain because distributed ledgers (the term of art for blockchain's tech) offer an exciting new way to transact business without a central authority.
Blockchain is information written in stone
Carving a writing into a stone feels permanent (some writings in stone have lasted for millennia). You can easily tell if a writing carved in stone has been altered, and, maybe most importantly, the stone does not care what you carve (write) on it. A blockchain is a digital stone. It lives on a self-healing network distributed over a large number of computers. It is, for all intents and purposes, permanent. You can easily tell if the information has been altered, and blockchains do not care what information you add to them.
Read More: In case you missed it, here's a primer I wrote about blockchain.
A smart contract is a vending machine
Vending machines are a good metaphor for smart contracts. You identify the item you wish to obtain. You put your money in the slot. The vending machine determines if it is the correct amount of money. If it is not the correct amount, the vending machine asks you for more or offers to return the money you have already inserted. If it is the correct amount, the vending machine releases the item you selected. Smart contracts work exactly the same way. You state your conditions, someone meets the conditions, and the transaction is completed.
Smart contracts in action
In practice, smart contracts are self-executing programs that automatically check the rules of the transaction, verify and process the transaction, and, in some cases, enforce the obligations of the parties. As you can imagine, this type of automation has the potential to dramatically increase productivity and lower costs.
Say you want to rent an apartment. You send your landlord your first month's rent plus a security deposit. Since you've met the initial conditions, the smart contract provides a digital entry keycode (via blockchain) by the first of the month. As long as both parties continue to fulfill their obligations under the agreement (rent is paid, digital entry keycode is available on the blockchain), all is well. If the digital entry keycode does not show up, the smart contract refunds your money. If you don't pay the rent, you don't get a keycode. (Obviously there would be more conditions to be met and different remedies for grievances. Also, and very importantly, smart contracts do not reduce the need for lawyers, the rule of law, good business practices, good business models or excellent customer experiences. Smart contracts simply automate transactions without the need for a central authority.)
Wait. What? I don't need a blockchain for that
In the example above, you could easily accomplish the same thing with a well-constructed, secure database and a well-written application with a nice front end. Why is a blockchain-powered approach better than the way you would do it with common digital infrastructure? This may be the most important question you ask when thinking about using blockchain-enabled smart contracts.
Who's using smart contracts today?
While we're still in the early days for blockchain, distributed ledgers, and smart contracts, there are many companies already making use of the technology:
- A German electric company is using smart contracts at electric car charging stations to transfer payment for electricity used from the car owner to the charging station provider (i.e., "If electricity is used by X, then transfer €__ per kwh used from X to Y").
- Residents with solar panels within the Brooklyn Microgrid are trading extra electricity for credits, which can then be used or sold (automatically).
- The Blockchain in Transport Alliance is using smart contracts to make the entire shipping process easier, while ensuring packages don't get lost in the event that they arrive ahead of a manifest, say.
- Fizzy, from French insurance agency AXA, has begun monitoring air traffic schedules and automatically issues compensation when your flight gets pushed back more than 2 hours, all without you needing to take action. (Suddenly, flight delays got more tolerable.)
How do I create smart contracts?
Smart contracts can be coded on any blockchain. Ethereum is popular. Regardless of the language you write them in (Solidity, Serpent, LLL, Mutan, etc.), all smart contracts are written (and can be thought of) as if/then statements: "If this happens, then do that."
To get a sense of what a smart contract looks like (in code), check this out. If you want to create your own smart contract, this blog post by Gerald Nash offers terrific step-by-step instructions. Have at it!
Are there drawbacks?
A lack of true regulation surrounding blockchain, distributed ledgers, and smart contracts makes using them a bit like the Wild Wild West. This is a good time to remember that everything that can be hacked will be hacked, like when a thief stole $55 million in ether in 2016. Caveat emptor.
Another potential issue is the time it takes to process a transaction (or, in blockchain terms, the time it takes for a payment to be "confirmed" by a ledger). When you swipe a credit card at a grocery store, the merchant verifies your account, then processes the transaction—all in a matter of seconds. Depending on the design of your particular blockchain, whether it is public or private, and a whole bunch of other technical considerations, transactions on a blockchain can take much longer.
Are smart contracts right for me?
The uses for smart contracts are limited only by your imagination. They will reduce costs, human error, paperwork, and manual recordkeeping. They have the potential to increase margins, improve business intelligence, and dramatically increase productivity. If you currently have business processes that would benefit from these improvements, it's time to put away your stone carvings and get digital.
Author's note: This is not a sponsored post. I am the author of this article and it expresses my own opinions. I am not, nor is my company, receiving compensation for it.