Get started
Get started
On October 31, 2008, a person calling himself by the alias Satoshi Nakamoto published a scientific paper entitled Bitcoin: A Peer-to-Peer Electronic Cash System. In this White Paper, he describes the main principles of the future Bitcoin protocol.
It has been almost 15 years since the White Paper was published, and despite the many developments made on the protocol since then, this paper has not aged a bit. It still allows us today to understand the first objectives of Bitcoin and the ingenious mechanisms that allow its proper functioning. If there's one book you should read to understand Bitcoin, it's this one.
Since it is a scientific paper, reading it may seem austere. In this article, we are going to explain simply what Satoshi Nakamoto describes in the Bitcoin White Paper.
To be able to follow this article, you can also download The Bitcoin White Paper in its version of March 24, 2009 in English, or The translation by Arnaud-François Fausse in French.
The Bitcoin White Paper begins by shedding light on the limitations of electronic transaction systems that already existed in 2008. In the second sentence, Satoshi denounces the weaknesses of the trust model for these payments, which rely on third parties.
According to him, electronic payment systems have inherent costs and uncertainties, especially with regard to conflict resolution and fraud. They do not allow small transactions and are not suitable for some merchants, as they do not offer the possibility of irreversible payments.
To solve this problem, Satoshi suggests using an electronic payment system based on cryptographic evidence, rather than trust. He wants two parties to be able to make a transaction without the intervention of any central authority. That system is Bitcoin.
When we analyze this introduction, we understand that the primary objective of Bitcoin was to offer an electronic payment system that does not require trust. Finally, as the title of the White Paper describes, Satoshi wanted to create a peer-to-peer electronic cash system.
At the end of the introduction, Satoshi explains that the Bitcoin protocol is primarily a proposal to solve the problem of double spending by using a distributed timestamp server, but I'll talk about that in more detail in the next few parts.
In this second part, Satoshi Nakamoto describes what a coin represents on Bitcoin. He explains to us that these coins are represented by a chain of electronic signatures. Finally, he describes what will later be called “UTXOs”, i.e. unspent transaction outflows.
The person who receives bitcoins can then verify the various previous electronic signatures, in order to go back to the creation of the coin. In this way, he can verify that the bitcoins he receives are legitimate.
An asymmetric cryptography system is used to generate key pairs and signatures. In this part, it should be understood that public keys are used to receive bitcoins, and that private keys are used to sign and spend bitcoins.
➤ Learn more about digital signatures on Bitcoin.
In the paragraph following this diagram, Satoshi describes a problem with peer-to-peer electronic money systems: The double expenditure. In a centralized system, as with banks, there is a central entity responsible for ensuring that the same unit of currency is not spent twice. For example, if Alice has $10 in her bank account and sends it to Bob, then Alice can't send that same $10 back to Charles. In this way, the bank prevents double spending.
But in a decentralized system like Bitcoin, you don't want payments to rely on a central entity like a bank. Remember Satoshi's introduction: you need to eliminate the need for trust in the system.
He then explains to us that a way is needed for the beneficiary of a transaction to ensure that the previous owner of the coin has not already spent the same coin in the past. In other words, the beneficiary must be able to ensure the non-existence of a previous transaction. And according to Satoshi, The only way to confirm the absence of a transaction is to be aware of all transactions.
Each participant must therefore have access to all past transactions, in order to be able to have proof that upon receiving a transaction, it is in fact the first to spend the bitcoins committed. To do this, the Bitcoin protocol relies on a distributed timestamp server. This is what you probably know under the name “Blockchain”. Transactions are grouped into blocks, and each block is published one after the other. We can then put a time on a published transaction, and confirm that it existed at the time of the timestamp.
Each block includes the imprint of the previous block in order to form a chain, so that each new block reinforces the previous one. That's why we're talking about “blockchain” today.
This server must be distributed to all users so that everyone can confirm the non-existence of a transaction in the past, without using a trusted third party. In this way, double spending on the Bitcoin system is avoided.
This is one of the most interesting parts of the White Paper, as Proof-of-Work represents the core of Bitcoin. Satoshi introduces us to this concept as a mechanism similar to the protocol. Hashcash by Adam Back.
For a block to be considered valid within the blockchain, the hash of its header must be less than a given target. A value that can be adjusted freely (the nonce) is incremented in each block. Participants can thus try several random values, until the hash of their block is less than the target. This process is what is known today as “mining.”
Satoshi points out to us that, since the blocks are linked together, the modification of a block in the past necessarily requires redoing all the proof of work of the later blocks. This is why a Bitcoin transaction becomes more and more unchangeable as new blocks are mined.
The target is adjusted at regular intervals in order to be able to adapt the mining difficulty to the evolution of the computing power deployed on the network.
Technically, proof of work thus solves the problem of defining the majority decision-making process in a peer-to-peer system. Indeed, in the previous part, we saw that all users must maintain their own timestamp server, listing all transactions executed. So we need a way for the participants to agree on a unique version of this blockchain. To do this, honest nodes on the network consider the blockchain with the largest amount of accumulated work to be the legitimate one.
Until 2010, Satoshi thought that the longest chain was the chain that had the most accumulated work. That's why he refers to “the longest chain” in his White Paper. However, it is the chain that has the most accumulated work that has been considered valid since 2010 by Bitcoin nodes. This channel is therefore not necessarily the longest, contrary to what Satoshi thought in 2008.
Indeed, a way must be found for participants to be able to vote for the version of the channel that they consider legitimate. Since we do not want Bitcoin to rely on a central authority, it is obviously impossible to verify the identity of each participant in order to avoid cheating in the voting system. We therefore need to find a way of voting based on objective data, in order not to make the network rely on human interventions.
Satoshi explains to us that Bitcoin could have decreed that an IP address was equivalent to a vote. But the problem with this mechanism is that it is very easy to multiply IP addresses in order to cheat and influence the result of the vote. This is what we call a Sybil attack in computer science.
On the contrary, by using Proof-of-Work and by decreeing that the nodes synchronize on the chain with the greatest amount of accumulated work, Satoshi solved this problem of the majority decision-making process. So, one vote on Bitcoin is equivalent to one unit of computing power. The majority decision process is based on objective data that imposes a cost on the user in terms of electricity consumption and processor time.
Proof-of-work is essentially one-CPU-one-vote.
In short, proof of work makes it possible to impose a significant marginal cost on the multiplication of votes. It is therefore a measure to limit Sybil attacks on the majority decision-making process of the Bitcoin protocol.
➤ Learn more about how proof of work works on Bitcoin.
With these first parts, Satoshi Nakamoto already offers us a first overview of the mechanisms of the Bitcoin protocol. We discover that the operating framework is based on digital signatures that allow the transfer of coins. This allows control of the property, but it does not prevent the risk of double spending. A distributed timestamp server (the blockchain) is then used to have a record of past payments, which makes it possible to confirm the absence of a transaction. In order for users to agree on a single version of this blockchain, Bitcoin uses an established consensus mechanism based on proof of work.
However, we still have several parts to analyze together. We will have to wait until the publication of our next article, next week, to explore more. There we will discover:
Finally, I will simply explain to you the famous part 11 of the White Paper, which may seem austere at first glance, but which is of paramount importance for understanding Bitcoin.