What in the world is Bitcoin?

in bitcoin •  6 years ago  (edited)

This post is a basic introduction to the technology behind Bitcoin. It is based on a talk I gave a few months ago. The audience was assumed to know very little about the technology.

output-0.jpg

Professionally, I juggle several hats. I am a physicist, a teacher, a coder and I understood the potential of Bitcoin early on. As a physicist and programmer, I am fascinated by complex systems and have been studying cryptocurrencies since 2011.

output-1.jpg

I was asked to give a talk on cryptocurrencies. I was meant to answer the question What in the world is Bitcoin?. But that's easy, I said!

output-3.jpg

Well, yes. Sure. But, how does it work?, and What is it exactly? To which I replied, That's easy too! It’s an electronic, pseudonymous, decentralized, proof-of-work blockchain based crypto-currency.

And my audience kinda raised their eyebrows ...

output-11.jpg

OK. Let us start from the beginning.

1. It is an Electronic Currency

output-13.jpg

So you can pay for stuff, send it, store it. But it only exists as ones and zeroes on computers. It’s digital money. Now some people might say: “Well, if you can’t touch it or store it like real money, how can you trust it?”. Well, I have news for you.
The vast majority of dollars or euros are already digital. Last night I made this graph, where the area is proportional to the trillions of dollars in circulation in the world.

output-15.jpg

The yellow square is cash (banknotes, coins, checking deposits). The next one is stocks, and then debt, followed by hundreds of trillions in derivatives. Everything which is not yellow is already digital. So your bank does not have the cash you may think it does. 90% of money today is digital [1,2,3].

As a reference, I have added gold (the tiny rectangle on top of cash), and Bitcoin … the even smaller dot left of cash (As of Summer 2018). It is very small but, surprisingly, you can see it. All right, so I said that Bitcoin is an electronic currency. But that’s not very special. Most currency is electronic currency. So what is the big deal then?

Well, the important bit is all the mumbo jumbo in the middle, … blockchain, decentralized, etc. We could, in fact, rephrase it and say that Bitcoin is an:

output-17.jpg

Bitcoin is an electronic currency on a magic ledger. Ok it’s not magic, magic … but we can say that Bitcoin is an electronic currency on a very special ledger. Actually, I am going to go a little further and say …

output-19.jpg

If you don’t know what a ledger is, you can imagine an account book to keep track of transactions (debits & credits). One page might look like this:

output-20.jpg

It might say:
Joe has 2.2 BTC
Alice has 1 BTC
Runa has 0.0042 BTC
And let’s say Joe wants to pay Alice one bitcoin.

output-21.jpg

All that needs to be done is update the ledger with the new balances.

output-22.jpg

At this stage ... newcomers to Bitcoin usually think:

output-23.jpg

Well, Those are exactly the right questions. That's precisely where the Bitcoin magic happens. Let's start with the first question.

Who updates the ledger?

Let's think about the traditional banking system. Your accounts, payments or mortgages are also kept in an electronic ledger.

output-26.jpg

Traditionally when you make a payment, your bank shifts a number in a register. Or the central bank issues credit to banks. They are the ones updating the ledgers. Or perhaps an intermediary like MasterCard sends a request to update the ledger. In any case, you are certainly not allowed to update the balance in your bank account. For that, you need to trust your bank. The update of the ledger is done by:

output-27.jpg

A trusted, central authority (or an intermediary who charges for doing so). The Bitcoin ledger, however, is very different.

The bookkeepers are those who chose to participate. A good slogan at the beginning could have been:

output-30.jpg

So let's recap. We have a number of bookkeepers, all online, and there is a ledger.

output-32.jpg

2. It is an Electronic Pseudo-Anonymous Decentralized Currency

Now, our sentence had two interesting adjectives: Bitcoin is pseudo-anonymous and decentralized. Pseudo-anonymous means that the ledger looks more like a Swiss bank account than a list of names. If you look at the ledger you will see something like this.

output-34.jpg

  • Bitcoin account 1VayNert3x1KzbpzMGt2qdqrAThiRovi8 has 2 BTC,
  • Bitcoin account 15JhBLtCWaDqrMrgcyDhu7m62TVZxgrtj8 has 0.018 BTC,
  • etc

but you don’t know who owns what. It's just an account identifier and a balance. The second aspect is that the ledger is public and distributed. This means that anyone in the world can go and read the books. Anyone! For example, want to see all the donations received this year by Wikileaks? Go ahead. Anyone can read any and all bitcoin addresses, and all transactions from the creation in 2009. In fact, a better picture of the network would look like this:

output-37.jpg

Where all accountants have a copy of the ledger. That's what is meant by distributed. But then ...

output-38.jpg

And this is the very heart of the question. The very reason Bitcoin matters, and why it has been so successful. Let's follow an example to see how it happens. Imagine Peter wants to buy a smoothie and needs to pay Allie. To do so, 0.001 BTC from his account needs to find its way to Allie's account.

output-40.jpg

(By the way, 0.001 Bitcoin is sometimes called a miliBitcoin or mBTC for short). To do so, Peter's phone sends a message on the internet saying:

Please remove 0.001 BTC from 1EiwDW9VjTUbLJtuPYUkbj5fJDnc36WKdz
and deposit it in the account 1AxZb1Nqh7TPWURjLbDUQsSpUQZnF5cqLe.

The actual process is: Scan a QR code, type password, send. But the concept is the same:

output-42.jpg

Peter's message will be relayed to all the accountants on the network who now have to update the books. To give you a sense of scale, every 10 minutes, transactions worth $11 million were being added to the ledger (in Jan 2019). But what incentive would they have to do that job? Well, to compensate them for their effort, their knowledge, and their computers ... one bookkeeper will be awarded 12.5 BTC at random. You might wonder: Who are these people? Who are these hard-working, ledger-updating bookkeepers? Well, let me introduce you to a real-life Bitcoin bookkeeper:

output-45.jpg

Yes. They are machines. Machines constantly running the Bitcoin bookkeeping software. So an even more accurate picture of the Bitcoin network would look like this:

output-46.jpg

You might be asking yourself ... couldn't people easily cheat? Let's go back to our friend Peter.

output-48.jpg

Let's say he has a total of 1 bitcoin in his account. What if he sends 1 bitcoin to Bob, and then, immediately, tries to send 1 bitcoin to Allie as well. Maybe the bookkeepers in Hong Kong have not processed his transaction yet! Maybe he sends both almost simultaneously trying to get both in the ledger. This is the now famous Double Spending Problem.

output-51.jpg

How can bookkeepers prevent that? Perhaps even more concerning is the following. When Peter paid Allie, he sent a message to the bookkeepers saying:

Please remove 0.001 BTC from 1EiwDW9VjTUbLJtuPYUkbj5fJDnc36WKdz and
deposit it in the account 1AxZb1Nqh7TPWURjLbDUQsSpUQZnF5cqLe.

But at least that was his account. What if he sent a message to pay from an account that wasn't his?

output-53.jpg

In other words: how do we know Peter is who he says he is? And how do we know who sent what?

And come to think of it, is there any warranty of not having rogue bookkeepers? They could also add incorrect balances. In fact, we should not trust them at all!

2. The heart of Bitcoin

output-57.jpg

We are now ready to venture into the heart of Bitcoin's innovation, but to do so we will need some mathematics. If you are not familiar with cryptography, do not fret! We will need to consider something called a Hash Function. But I usually call them:

output-61.jpg

As I think this describes them better. So what do they do? Simply put: they create summaries. Think of it this way. Imagine I have a summary box and I feed it the whole text from Romeo and Juliet. It might output something like this:

Romeo & Juliet in love. Parents don't approve. Drama ensues.

And we could ask ourselves: What if we change the name of a main character in the text? Well, a summary box would change the summary accordingly:

output-63.gif

But this is not the type of summary box we need for Bitcoin. The ones used for Bitcoin (and secure banking) make different summaries. They look closer to this:

output-65.jpg

In other words. You input text and you get gibberish out. However, this summary box does something surprising. If you change anything in the input (even a single letter), the output becomes utterly different. Completely unrelated.

output-66.gif

To give you a more dramatic example. You could feed the entierety of wikipedia to the box and get the tiny gibberish summary. Change a comma, and the summary will become unpredictable and seemingly unrelated.

output-68.gif

Now, I hear you. It sounds like a pretty sad summary machine. What good is an unpredictable summary which looks like gibberish? Well, it is useful for security. The key concept is that by looking at a summary we can't know what created it. Was it the word dog? Was it your neighbour's social security number? Was it the complete works of Shakespeare with one letter altered? We can't know a priori. A good Hash function has two properties:

  • The same input creates the same output (Always!)
  • The output is impossible to reverse.

The only way to find the input would be to try every single option.

output-72.jpg

As you can imagine, that could take a very, very, very long time. Imagine trying Wikipedia. Then Wikipedia with one word changed, two words changed, etc, etc. Essentially impossible.

Ok, so we have these funny boxes. How does the Bitcoin network use them? Let's get back to Peter. Peter was trying to trick the bookkeepers by sending the message send money from Julia's account to this other account. How can Julia, and only Julia, request such a transaction? To do so, she needs to sign her transaction. We can picture it like this:

output-73.jpg

But of course, if she sends a picture of her signature, anybody can copy it and pretend to be her. Instead, she uses a digital signature (a bunch of ones and zeroes).

output-74.jpg

The digital signature is, effectively, the password to her account. This may sound like an even worse idea! It's even easier to copy-paste a password than pictures. And you are right.

The solution to this problem is to take the signature and the requested transaction and pass it through a magic summary box. And of course, out comes unpredictable gibberish. And more importantly, it's impossible to know what the signature was (Since it is impossible to reconstruct the message that created the gibberish).

output-75.jpg

The message she will upload will now look like this:

please transfer 100 BTC from account 6Yr4nT0ppJVSXYPq0PQzSDEfJDnc36SAxm to account 1AxZb1Nqh7TPWURjLbDUQsSpUQZnF5cqLe. To prove that I am the owner of the account, here is my transaction added to my signature/password and passed through a magic summary box: b2fa3d8e577402cf5654dbf559d89702c33db73667fa38fba4bdebdb924c1fb9

Mathematicians have been able to find a second type of summary box. I call it the Magic Verify Box. This is a box that the bookkeepers have. Their question is: is it true that Julia is the owner of the sending account? Banks will ask you for your password, or parts of your password to ascertain this. But Bitcoin uses clever math to get around it. The Verify Box can read the transaction request, the gibberish summary, and say:

output-79.jpg

And it can do so without ever knowing the password (what we called the digital signature, earlier). Remember that Julia sends the signature or password + transaction through her summary box which scrambles everything beyond recognition. And yet, the accountants can be sure that she signed it with her password. Such is power of cryptographic hashing algorithms (also known as public key cryptography).

More importantly, if Peter tries to send a transaction pretending to be Julia, it is immediately blocked, as he does not have the secret signature (or password).

output-81.jpg

You might have heard of a Bitcoin wallet. You are now ready to know what it means. It is just two numbers: A "bank account number" and a "password".

output-82.jpg

That's all a wallet is. In other words: the address with the Bitcoin, and the signature (or secret password) that allows you to spend. In the Bitcoin lingo, we call them:

  • The public address (the account number on the ledger)
  • The private key (the secret signature)

This is what two such numbers look like:

output-85.jpg

If you combine those two numbers, your transaction details and send them through a summary box, you have spent Bitcoin on the Internet. Of course this all happens behind the scenes. Users just click a button.

3. The Blockchain

We have now covered most words inside

Electronic pseudo-anonymous, decentralised, proof-of-work blockchain based crypto-currency.

Our last word was crypto, which refers to the use of these mathematical boxes that enable to spend securely without revealing passwords.

Now, as I explained, when you input something new into a summary box it is impossible to predict what will come out the other end. Then somebody had a brilliant idea.

Why don't we pass the full ledger through the box?!

output-89.gif

The gibberish summary which it spits out would be an impossible to forge summary.

Why? Because if you were to change a single digit, a single comma, a sign, a cent of a Bitcoin in someones' account, the whole summary would change. And this is indeed what happens. Every 10 minutes a new summary of the entire accounting since 2009 is made.

output-91.gif

If anybody was ever to change any character, it would be instantly obvious.
If you have heard the term Blockchain before, you should understand it now. Every 10 minutes a new block is added to the ledger. Bookkeepers take the previous summary (now set in stone), and append the transactions from the last 10 minutes. This new ledger itself is passed through the summary box and set in stone as the last valid version.

output-92.jpg

This chain of verified summaries is called the Blockchain. You will also see it called an immutable ledger, since nothing can be changed without altering each summary. Now, you might be thinking. Ok, so you can't change the past.

output-95.jpg

But what about those crucial 10 minutes before it's stamped into the block summary? Could bookkeepers cheat in those critical 10 minutes.

And that, my dear reader, is the final piece in our puzzle. Bitcoin's creator married several existing technologies and ideas to solve this difficult conundrum. The last piece of the puzzle is the last word in our description of Bitcoin:

4. The proof in the pudding

Electronic pseudo-anonymous, decentralised, proof-of-work blockchain based crypto-currency.

To solve the problem of cheating while the current block is being agreed upon, Bitcoin has an incessant bookkeeper competition. The challenge that bookkeepers need to solve is the following:

  • Pick a number or letter,
  • append it to the current accounting ledger
  • and pass the result through the magic summary box

> If the output starts with 18 zeros, you win 12.5 Bitcoin.

Now, remember that it's impossible to guess which input creates a certain summary. The only way to do it is to try all possible options and hope that one works. So each bookkeeper is trying:

  • 1 + the last summary
  • 2 + the last summary
  • 3 + the last summary
  • ...
  • 23af + the last summary

Until one lucky bookkeeper hits the jackpot!

Currently (Jan 2019), finding the lucky number gets you the equivalent of $48,000 USD. And this happens every 10 minutes! So guess what people started doing? They started buying multiple computers and having them running day and night trying to find that number!

output-103.jpg

Today, entire server farms are dedicated to finding the number which is appended to the next block. As you can imagine, if you find a few, it can be very profitable. But how does this protect the network from cheating?

The details are complex, but the essence is that, as a bookkeeper, it does not pay to cheat. In other words, if you spend your computer resources trying to alter your balance on the blockchain, somebody else will find the number which validates the correct transactions. So if you try to cheat, the rest will get ahead of you and you are unlikely to get the 12.5BTC prize!

output-106.gif
The reward in summer 2018 was $94,000

There is a lot more to this process. But this article will stick to the essentials. One essential observation is that this is how the currency is created. All coins ever issued were a reward to those bookkeepers on the Bitcoin network. The coin is issued as a reward for the bookkeeping process. In the Bitcoin lingo, the bookkeepers are actually called Bitcoin Miners. Since they are searching for those elusive coins, their job is also called mining. But the objective of their job is to keep the network secure. The rules on Bitcoins creation are more involved, but the above captures the gist.

The actual Bitcoin protocol adjusts the reward (it will be less than 12.5 BTC in the future), adjusts the difficulty of finding the next block, and prioritises transactions depending on the fees paid. Finally, only 21 million bitcoins will ever be issued, and transfer fees will fund the “bookkeeping” thereafter.

If you think about it longer, you will find out that there is a risk if too many (more than half) of the bookkeepers conspire. This is indeed the case and much study and energy has gone towards preventing this.

By now, you should understand our first description of Bitcoin. It is an:

Electronic pseudo-anonymous, decentralised, proof-of-work blockchain based crypto-currency.

But more than that, it is the first time in history that anyone in the world can participate in a decentralized global economy without asking for permission, without a bank, at the click of a button.

output-108.jpg

The IMF director had this to say about it:

output-109.jpg

Personally, I find it a fascinating social and technological experiment. I said as much in 2013 and it hasn't disappointed. The future of cryptocurrencies is an open question that we will answer as a society but the possibilities are fascinating.
To keep this article accessible to the general public, several simplifications were made and some subtleties were omitted. If you want more technical details I can recommend 3Blue1Brown's video, Michael Nielsen's Bitcoin protocol explanation, or Ander's Brownworth's blockchain demo.

This article is published with License CC-BY

References

[1] https://www.federalreserve.gov/releases/h6/current/default.htm
[2] http://www.investopedia.com/tech/how-much-worlds-money-bitcoin/
[3] http://www.marketwatch.com/story/this-is-how-much-money-exists-in-the-entire-world-in-one-chart-2015-12-18
[4] The Math behind Bitcoin
[5] The slides from the original talk

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Hello @alphydan! This is a friendly reminder that you have 3000 Partiko Points unclaimed in your Partiko account!

Partiko is a fast and beautiful mobile app for Steem, and it’s the most popular Steem mobile app out there! Download Partiko using the link below and login using SteemConnect to claim your 3000 Partiko points! You can easily convert them into Steem token!

https://partiko.app/referral/partiko

Congratulations @alphydan! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 2 years!

You can view your badges on your Steem Board and compare to others on the Steem Ranking

Do not miss the last post from @steemitboard:

SteemFest Meet The Stemians Contest - The mysterious rule revealed
SteemFest⁴ - Meet the Steemians Contest
Vote for @Steemitboard as a witness to get one more award and increased upvotes!