Understanding smart contracts

By Geff Harper on Feb 20, 2018
Narrate this article

To understand the significance of smart contracts, we need to first take a quick step outside the technical sphere to briefly understand the basics of contract law.

Contract law is in essence, the regulations surrounding the formation of a binding agreement, knowingly entered into by a person or persons with informed consent.

In layman's terms, you have to understand what you’re agreeing to, then agree to it in a formal document, witnessed by someone else.

Contract law predates ancient Greece, so it’s not exactly new, and in the millennia since, one universal factor has remained constant.  It’s a pain in the arse.  Lots of forms to fill in, legal words you don’t understand, delays, bureaucracy, red-tape, and often ridiculous legal costs.

No wonder people are excited about anything that offers an alternative.

Enter the ‘smart contract’

The smart contract was first coined by Nick Szabo back in the mid 90’s to describe his concept for ‘a set of promises, specified in digital form, including protocols within which parties perform on these promises’.

Clear as mud isn’t it.  

Essentially, if digital transactions can be witnessed, cannot be changed without either party being notified, are unhackable, and contain a full record of every action in the entire history of the transaction, then they facilitate all the functions of traditional contracts. And they do all of it with less risk, increased transparency and reduced settlement times

Why now

Blockchain.  It was the missing link (ironic turn of phrase I know), and it facilitates all of the above requirements.  Because blockchain is a de-centralised database (or distributed ledger), it means hundreds of thousands of computers held by different people all over the world all hold a copy of the data.  It is these participants of the network that agree on updates to the chain by consensus, eliminating the needs for third party mediators such as banks or lawyers.

Is it really unhackable?

Of course it isn’t.  There is a clear way to hack a blockchain.  It’s just that no one is capable of doing it.

Each transaction contained in a block is ‘hashed’.   A ‘hash’ is a complex maths equation that reduces any amount of text or data to a 64-character string. That hash (or string) and the data that it created are intrinsically linked.  The only way to reproduce that exact hash is with exactly the same set of data.  If you change so much as a capital letter, you'll get a completely different 64-character string. This makes validating the authenticity of data and transactions, very, very easy. Each block contains the hash of the previous block. That's what makes it part of a (block) chain.   So, if one small part of the previous block was tampered with, the current block's hash would have to change. So, if you want to change something in any block, you also have to change the hash in the subsequent block, then every block that follows that.  Given that are already block chains with over 500,000 blocks in them with new blocks added maybe every ten minutes, that’s no mean feat.  

It’s theoretically possible, but so is Donald Trump quitting his post to take up a full role as a female activist.

Applications

Smart contracts are likely to replace traditional medical records, proof of ownership, money transfers, investments and purchases (already happening), insurance policies, identity documents, copywriting, records management and a host of other things too long to list.

When

It’s already happening.  The only factor limiting the speed is the number of people/businesses with the skills and knowledge to create blockchains, and that’s growing by the day.  In a few years, they’ll be teaching it in school.  If you’re in your 30’s, your grandchildren will quite possibly never know a world where you have to sign for a hire car or the title deed for a house, carry a driving license or own a passport.

Geff’s been in design for nearly 20 years, in digital for the last 10. Geff uses User-Centred Design principles to develop CX and UX that delivers for clients. He loves problem solving, leading design sprints and prototyping. Geff advocates strongly for user feedback and enjoys the challenge of creating solutions that positively impact user behaviour and interaction with technology.

Get in touch, We love to talk