Bitcoin explained like an onion, Part 2: A trusty chain

The next onion layer of understanding bitcoins is to work out how Bitcoin allows trusty transactions to be made without bank involvement.

This is part two of a multi-part series, which explains bitcoins in steps, like peeling an onion. Start by reading part one here.

Let’s transfer money without banks.

Remember Jane and Tom? Let’s allow them to transfer money without a bank or bank notes, just by writing a transaction slip. Jane has $5. She wants to give it to Tom.

Jane would have to write down that she wanted to transfer ownership of the $5 to Tom.

Great. Now, Tom wants to give the $5 to Louise.

Tom would have to write a slip saying that he wanted to transfer ownership of the $5 to Louise. Now we have two slips.

Sounds good. Until Jane turns out to be nasty, and makes another transaction slip. There, she writes down that she transferred the $5 to Bill.

Which transaction slips do we believe? Does Louise have the $5, or Bill? While we’re at it, how do we know that each person actually wrote their slips?

If we can’t trust the transaction slips, the very idea of Jane, Tom or Louise owning the $5 cannot be trusted.

A trusty answer

A very elegant solution is to daisy-chain all transactions together in a public way that cannot be tampered with.

Let’s work this out by going back to Jane. She wants to transfer $5 to Tom without using a bank or bank notes.

She writes down that she wants to transfer the $5 to Tom. This time, she signs the transaction slip. Everyone can see all the transaction slips.

Next, Tom wants to transfer the $5 to Louise…

…so he writes down on another slip that he wants to transfer the $5 to Louise, and he signs too…

…Louise sees that Jane signed the transaction from Jane to Tom. Jane’s signature is correct, so Louise knows that Tom has the $5. She’s happy, and the transaction slip is regarded as valid.

We have a chain of ownership, verified by signatures, from Jane to Tom to Louise.

Now this is the bit where Jane turns nasty. Jane has signed another transaction slip saying she gives Bill the $5.

But Bill is careful, and also knows about all the other transaction slips.

Bill sees that there are more transactions described by the first transaction chain between Jane, Tom and Louise than the second transaction chain. That’s enough for him to say ‘uh-uh’ and not trust Jane’s attempt to give him $5.

Why? There are more people involved in the longer chain, so there’s more trust in that chain. All those people would have to be wrong for the transactions to be incorrect, compared with just Jane in the second shorter chain.

Bill regards Jane’s new transaction to him as Jane probably trying to spend money she no longer has. Jane cannot double-spend her money.

Translating into the digital world…

It’s fairly straightforward to imagine that these transaction slips could be kept on a computer, right? You could write ‘Jane to Tom, $5’ with a digitised signature, as a row in a spreadsheet.

Having the transaction slips on a computer would be really handy. If the spreadsheet was on the Internet, lots of people could look at it. That would mean that everyone who was interested could check all the slips.

That’s what Bitcoin is. It’s a system of coordinating all the transaction slips publicly. Anyone can check any transaction. If another chain of transaction slips pops up, it’s trivial to work out which one is longer, and therefore correct.

There’s one enormous continuous chain of every single true transaction slip that has been written since Bitcoin started. In practice, the transactions are arranged in blocks, so the whole chain is called the blockchain.

Remember how we worked out that money is really just the trust system involved in transferring value from one place to another?

If Bitcoin gives us a trustworthy system to transfer value, then we have a form of money. A unit of Bitcoin is a share of this system, with a public record of ownership.

Think how useful this is.

Here are some examples:

  • Without third party intermediaries like banks, transactions become cheap.
  • Because it’s digital, it’s [quite] fast — more on this later.
  • If the units of currency are all visible, no one can print more and cause deflation.

But wait! There’s a problem.

We’re almost there, but there are a couple of problems with this system.

  • How do you know the signatures on the computer haven’t just been copied-and-pasted? Anyone could fraudulently sign a transaction.
  • How do you stop someone just making up a really long chain of transactions with copied signatures? The false chain would be longer than the true chain, and everyone could lose their money.
  • Who hands out the shares/Bitcoins in the system? Why can’t more Bitcoins just be made, devaluing everyone else’s share?

Click here to read the next part, in which we work out how we handle the first two problems.