A Beginner's Guide To Bitcoin (Part 5) - Technical Description - The Big Book - Rich Newman

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 5

7/16/22, 4:40 PM A Beginner’s Guide to Bitcoin (Part 5): Technical Description – The Big Book – Rich Newman

Rich Newman

A Beginner’s Guide to Bitcoin (Part 5): Technical


Description – The Big Book


beginners guide, bitcoin, blockchain, distributed ledger, explained, introduction, made easy, tutorial

April 25, 2018April 26, 2018 6 Minutes
Previous Article (https://richnewman.wordpress.com/2018/04/24/a-beginners-guide-to-bitcoin-part-4)   –   Next
Article (https://richnewman.wordpress.com/2018/04/25/a-beginners-guide-to-bitcoin-part-6)   –   Table of Contents
(https://richnewman.wordpress.com/a-beginners-guide-to-bitcoin-table-of-contents/)

Introduction

This article and a few that follow attempt a description of the technical aspects of Bitcoin in fairly simple
terms.  This includes a long section describing and justifying mining.

We start with the big book.

One Big Book

A Big Paper Book

Suppose that we wanted to invent a new sort of money that didn’t have all the mess associated with
traditional money.  Imagine that instead of cash and bank accounts and money distributed in all sorts of
places all we have is one big paper book.  This book records everything about our money.  The book is
public.  Anyone can read it

We define a ‘coin’ as the unit of value of our money.  A person can own a coin, meaning they have some
money to spend.  However, there are no physical coins.  We simply record that the person owns the
notional coin in our big book.  We also record the history of everyone who has ever owned the coin.

When someone wants to pay a coin to someone else the book is updated.  The page that shows the
history of the coin gets a new entry.  The entry shows that the coin has been paid, and who the new
owner is.  The old owner signs in the book that this is a valid payment.  Anyone is allowed to look at the
book, and hence can verify that a payment has been made.  Anyone can see who currently owns a coin.
https://richnewman.wordpress.com/2018/04/25/a-beginners-guide-to-bitcoin-part-5/ 1/5
7/16/22, 4:40 PM A Beginner’s Guide to Bitcoin (Part 5): Technical Description – The Big Book – Rich Newman

This would work as a form of money. There would be no need for physical coins or banknotes, or even
for banks and bank accounts.

The big book is all you need.  And a pen.

A Big Electronic Book

Of course, using a physical paper book of this kind this would be a silly way of handling money.  You
can see immediately that there are all kinds of drawbacks versus conventional money.

However, Bitcoin works this way.  The book isn’t paper, it’s electronic and is stored on computers, and
we call it a ‘ledger’.  When payments are made the details of the payment (the amount and payee) are
added to the ledger and the current owner signs that this is a valid payment using a digital signature
(https://en.wikipedia.org/wiki/Digital_signature).

To understand this you don’t necessarily need to understand digital signatures.  All you have to
understand is that there’s a way to identify the person who owned the coin from the record on the
computer, and that everyone can see that that person has signed after they have.  This is just like a
regular signature in the paper book above: only the person who owns the coin can sign and anyone can
see the signature and check that it isn’t a forgery.

At this point you may be wondering how people signing payments in a public book is consistent with
Bitcoin being anonymous.  I’ll deal with this in detail in a later article
(https://richnewman.wordpress.com/2018/04/25/a-beginners-guide-to-bitcoin-part-9/), although the brief
answer is that you don’t use your own name or signature in the ledger.  You use a name and signature
that is randomly generated for each payment.

But One Big Book Isn’t Enough…

Lots of Big Books

The fact that the Bitcoin ledger is on computers doesn’t immediately solve all of the obvious problems
with trying to run your money through one big book.

The first and most obvious problem is that having just one copy of the big book, on paper or on a
computer, is very inefficient.  Anyone making a payment would have to go to one place and sign the
book, and anyone receiving the payment would have to go to the same place to check that the payment
had been signed for.

https://richnewman.wordpress.com/2018/04/25/a-beginners-guide-to-bitcoin-part-5/ 2/5
7/16/22, 4:40 PM A Beginner’s Guide to Bitcoin (Part 5): Technical Description – The Big Book – Rich Newman

The obvious solution is to have multiple copies of the book, and have these updated from each other
fairly frequently to ensure they show the same data.  Now someone making a payment can sign a book
near to them, and the person receiving the payment can see that it has happened by looking at one of the
copies when it is updated.

The Distributed Ledger

Making multiple copies of a paper book that’s rapidly changing is clearly difficult. However, for
computers making copies of things is easy.  Even copying a digital signature is easy.  So we can set up a
network of computers each of which has a copy of our ledger.  Payments can be submitted to any
computer, and if they are successfully processed the processed payments can then be copied to all the
other computers.

Again, this is what Bitcoin does.  We have a ‘distributed ledger’


(https://en.wikipedia.org/wiki/Distributed_ledger).  We have multiple computers all over the world,
connected by the internet, all of which have the whole ledger on them.  Any of them can accept a new
payment instruction, check it, process it, and distribute the results to the other computers by just
copying the new entry in the ledger.  In fact, as we’ll see any computer can accept a new payment
instruction and will then copy it to all the other computers, and any of them can process it.

Peer-to-Peer Networking

What Is Peer-to-Peer?

In fact the technology for keeping multiple identical computers synchronized in this way is fairly
common and well known: it’s called peer-to-peer computing. (https://en.wikipedia.org/wiki/Peer-to-
peer)  One major use for this technology today is for file sharing: BitTorrent
(https://en.wikipedia.org/wiki/BitTorrent) is a very popular way of distributing large files.

I intended to write an explanation of peer-to-peer computing for those who don’t understand it. 
However, How-To Geek has an excellent description of BitTorrent
(https://www.howtogeek.com/141257/htg-explains-how-does-bittorrent-work/) which is certainly better
than I can write.  For file sharing we are just copying a static file around many computers.  However the
same technology can be used to copy new payments on a ledger, or groups of processed transactions.

Key Features for Bitcoin

https://richnewman.wordpress.com/2018/04/25/a-beginners-guide-to-bitcoin-part-5/ 3/5
7/16/22, 4:40 PM A Beginner’s Guide to Bitcoin (Part 5): Technical Description – The Big Book – Rich Newman

One key feature of peer-to-peer computing that is important for Bitcoin is that all computers have all the
data, and none is more important than any other.  They are all peers.  When the data changes on any one
computer it can be propagated to all the others.  This means any computer can stop working and the
peer-to-peer network will continue working.  The internet could even stop working for a while in one
part of the world and a peer-to-peer network would carry on working.

This is also important for more ideological reasons.  No one computer runs Bitcoin, it’s a set of
computers that isn’t even fixed.  It’s hard for someone to take control of Bitcoin.

Peer Discovery in Bitcoin

One thing that confuses people is how computers find other computers in the network
(https://bitcoin.stackexchange.com/questions/3536/how-do-bitcoin-clients-find-each-other).  After all the
internet is a pretty big place.  With BitCoin once your computer has found one other computer in the
network then the other computer will send you a list of yet more computers it knows about.  Once
you’ve got that list you can try them all next time you try to connect.  Finding the first computer for the
first time isn’t so easy though, and amounts to hardcoded lists in your client software, and some lists
associated with certain web addresses.  This isn’t very ‘decentralized’ but it does work.

Public Book, Private Payments

As we’ve said the ledger is public: anyone can see it and take a copy.  However, broadly, the only way it
can be updated is through a payment instruction signed by the owner of the money.  That is, the ways in
which our data can be updated are severely restricted, and are secure.

Note that ‘secure’ here doesn’t mean you need a user ID and password to log on to the system, it means
you need credentials (a digital signature) to update the ledger for a specific transaction.  This allows
anyone to be paid money and pay it on without having to set up user IDs.  This in turn means we don’t
need any trusted people who can do that, and the system can be ‘trustless’.

Paying Amounts Other Than One Bitcoin

There’s one other obvious problem with what I’ve described.  If every payment is for one coin then how
do we handle payments for amounts other than exactly one coin?  At the time of writing one Bitcoin is
worth about US $7000.  A payment system where every payment had to be a multiple of that amount
would clearly not be ideal.

https://richnewman.wordpress.com/2018/04/25/a-beginners-guide-to-bitcoin-part-5/ 4/5
7/16/22, 4:40 PM A Beginner’s Guide to Bitcoin (Part 5): Technical Description – The Big Book – Rich Newman

Bitcoins are broken down into Satoshis.  There are 100 million Satoshis in a Bitcoin, making a Satoshi
about  US 0.007 cents currently.  We equally don’t want to have to make payment instructions at this
level.  As the original Bitcoin paper (https://bitcoin.org/bitcoin.pdf) says ‘although it would be possible
to handle coins individually, it would be unwieldy to make a separate transaction for every cent in a
transfer’.

Again the answer is fairly straightforward.  A payment doesn’t have to be just one coin.  Instead it can
have multiple inputs of unspent amounts from previous payments, as well as multiple outputs, one of
which can be a payment of change back to the person making the payment.

The basic idea is still the same: for the payment to be valid it needs to be correctly signed by the person
owning the money being paid, and all a payment does is assign the money to someone new, or back to
the original owner in the case of change.

One thing this does do is make it hard to trace the history of one individual coin.  Of course we don’t
really need to be able to do this for our money to work.  We just need to know the current owners of the
money and to be able to verify that they have signed correctly when they pay it on.

Previous Article (https://richnewman.wordpress.com/2018/04/24/a-beginners-guide-to-bitcoin-part-4)   –   Next


Article (https://richnewman.wordpress.com/2018/04/25/a-beginners-guide-to-bitcoin-part-6)   –   Table of Contents
(https://richnewman.wordpress.com/a-beginners-guide-to-bitcoin-table-of-contents/)

Tagged:
beginners guide,
bitcoin,
blockchain,
distributed ledger,
explained,
introduction,
made easy,
tutorial

Published by richnewman

View all posts by richnewman

Create a free website or blog at WordPress.com.

https://richnewman.wordpress.com/2018/04/25/a-beginners-guide-to-bitcoin-part-5/ 5/5

You might also like