Tech●●●●●Difficulty 4 of 5

Can a computer program replace a written contract?

Nick Szabo described a vending machine as a kind of smart contract back in 1996, nearly two decades before Ethereum turned the idea into a programming language running on a blockchain.

▶ Start the story

Partly. A smart contract is a computer program that automatically executes, controls or documents actions according to the terms of an agreement, so it can take over the enforcing: the code carries out the deal itself, which is meant to reduce the need for trusted intermediaries, arbitration costs and fraud. What it does not replace is the law: a smart contract does not typically constitute a valid binding agreement at law. The idea is older than blockchains. By 1996, computer scientist Nick Szabo was using the term for agreements enforced by hardware or software instead of by law, and his example was ordinary: a vending machine.

The idea needed somewhere to run. Ethereum was conceived in 2013 by programmer Vitalik Buterin, and its original white paper described Bitcoin as only a weak version of Szabo's concept, proposing a stronger version built on a Turing-complete language. Since Ethereum's 2015 launch, "smart contract" has come to mean general-purpose computation on a blockchain: code and data deployed through cryptographically signed transactions, as the US National Institute of Standards and Technology puts it, whose effects cannot be manipulated without modifying the blockchain itself.

From vending machines to The DAO
  1. 1996

    Nick Szabo is using the term "smart contract"

  2. 2013

    Vitalik Buterin conceives Ethereum

  3. 2015

    Ethereum launches

  4. 2016

    An attack on The DAO drains about US$50 million of ether

The legal side is still catching up. A 2018 US Senate report noted that the concept is rooted in basic contract law: usually courts adjudicate disputes and enforce terms, but with a smart contract, a program enforces the terms built into its code. US states including Arizona, Iowa, Nevada, Tennessee and Wyoming have passed legislation on their use.

Code that enforces itself also enforces its mistakes. Bugs in a smart contract, security holes included, are visible to everyone yet may not be quickly fixed. In June 2016, an attack on a smart-contract project called The DAO drained about US$50 million worth of ether at the time, and Ethereum's developers clawed the funds back only by doing a hard fork of the Ethereum software.

Quiz me

0/3

  1. 1.Why did Nick Szabo count a vending machine as a kind of smart contract?
  2. 2.How did the original Ethereum white paper describe Bitcoin's scripting relative to Szabo's smart contract concept?
  3. 3.Why did a bug in The DAO in 2016 take a hard fork of Ethereum to undo?

Recap

A smart contract enforces itself through code, but that doesn't automatically make it a legally binding contract.

Surprising fact · Nick Szabo used an ordinary vending machine as his founding example of a smart contract back in 1996.

Sources (2)

No source, no claim. Every fact in this lesson (14 claims) cites at least one of these.

  1. [1]Smart contract · Wikipedia
  2. [2]Ethereum · Wikipedia
More lessons in 💻 Tech (3) See all tech lessons →

One more light on your map.

Get one lesson like this every day, about the things you love. Free, in two or five minutes.

Get the share card for this lesson ↗