IT leadership and the CIO
Shutterstock.com

A new generation of company is hoping to move not just money onto the digital blockchain, but entire enterprise applications. The world of smart contracts is fast approaching, but what are they and how do they work?

The traditional bitcoin blockchain was pretty restricted, enabling participants to transfer digital cash and little else. Since that system emerged in 2009, software developers have been busy working on a new generation of blockchain that can do far more.

Newer blockchains can check for certain conditions and then take actions based on them. Some companies are restricting them purely to specific applications such as finance. Others, such as Ethereum, are creating blockchains that can run their own own computer programs, turning the network into what amounts to a giant computer. Smart contracts are effectively blockchain-based enterprise applications.

Smart contracts in action

While smart contracts can serve a broad base of use cases, there are many overlaps between smart contracts and legal ones. What might this look like in practice? Imagine a complicated legal agreement between three individuals: Bob, Jane, and Mike. Between them, Bob and Jane are buying 50 per cent of Mike’s business. Mike is retiring, but wants to do so slowly, divesting his shares over time. You could get a lawyer to draft up that contract for a large fee and then have them manage it for an even larger one. Or you could have a coder write it, and a computer manage it. A smart contract running on Bob, Jane and Mike’s computers would automatically transfer 10 per cent of Mike’s initial shareholding, evenly distributing it between Jane and Mike, on Dec 31st each year – and it would do it automatically.

A lawyer could probably do that calculation each year, but you’d probably pay them for the privilege – and you’d have to trust them to do it properly.

“Smart contracts solve the problem of intermediary trust between parties to an agreement, whether that is between people transferring assets like gold, or executing decisions between two parties in a betting contract,” explained Vitalik Buterin, a founder of Ethereum.

Besides, contracts can be far more complex than that, which would increase the cost of having a lawyer do it to the point of impracticality. Let’s say that Jane and Mike wanted to divide up the new portion of their shareholding each year based on the hours that they logged in a time management system that also ran on the blockchain. The smart contract’s code could balance their time investment each year and use it to adjust their ownership accordingly.

Smart contracts may affect notary services, explained Alex Batlin, senior innovation manager at UBS. “The blockchain could be used for the final attestation of legal contracts,” he said. “In addition, lawyers could start selling smart contracts that could then be deployed on the blockchain rather than standard legal prose contracts.”

Writing smart contracts

So, smart contracts running on every participants’ machine are designed to keep everyone honest. But how will people write them? There are various languages emerging designed to support smart contracts in certain areas. Ethereum has Solidity, a Javascript-style language designed specifically for smart contracts that was recently supported in Microsoft’s Visual Studio. It also has Serpent, a Python-style language which was built on Lisp-Like Language (LLL), another, far lower-level language.

Eris Industries has its own platform for developing enterprise blockchain applications which it is currently targeting at the financial industry. It uses Legal Markdown, a markdown language designed to legally represent aspects of legal contracts, although it can still serve the Ethereum platform, explained Eris CEO Casey Kuhlman. He believes that entire business relationships can be coded relatively simply using smart contracts. Escrow agreements are a good example. “That’s four lines of code,” he said. “You can move beyond that in five minutes.”

These contracts can already be connected to existing digital systems, enabling them to monitor the price of currency, for example. Banks are looking at supporting them, which could open up a world of financial information to a smart contract, although many if not all of those implementations will be closed to all but an approved set of financial partners. There are also opportunities for smart contracts that talk to connected devices. Companies could pay for printing services or sell each other excess energy via smart contracts if they took off.

Now is a good time for software developers to start exploring the concept of smarter blockchains, and feeling out some of the available frameworks and platforms. Others include Blockapps, an Ethereum-compliant platform for enterprise blockchain application development.

The market for smart contracts is still so nascent that developers won’t be much in demand right now. As the concept gains more traction, though, startups and large players alike may be crying out for these services.



Related Download
Welcome To Your Agile Data Center Sponsor: EMC
Welcome To Your Agile Data Center
Download this white paper to learn how data centre teams can keep up with complex workflows and reduce costs by leveraging a dynamic data services platform.
Register Now