Newcomer’s guide to the Bitcoin white paper
I fell down the rabbit hole late 2017, devouring articles, books, sub-reddits, stack exchange forums and even podcasts ever since. In many ways, crypto is a new world with its own vocabulary, language and culture. There are differences in ideology, perspectives and opinions. There are wars (of words) and alliances. It’s even been compared to the Game of Thrones.
It can be a challenge to sift through all the information. After much wadding around, it occurred to me to go back to the source.
The White Paper
Of course, I’m referring to the white paper written by Satoshi Nakamoto in 2008. The nine pages that launched, as of this writing, a digital currency worth 240 billion USD in market capitalization. The concepts discussed in this paper continue to be relevant today; it’s technology serving as a foundation for years to come. Let me share with you what I’ve learned. Along the way, I’ll bold key words that will help you make sense of the space moving forward.
The way to wrap your mind around bitcoin, heck any new technology, is to ask:
What problem(s) does this solve?
The problem is stated clearly in the first sentence:
Commerce on the internet has come to rely almost exclusively on financial institutions serving as trusted third parties to process electronic payments (Nakamoto, 2008).
Let’s unpack this:
Say I live in Thailand and have a relative going to graduate school in the US. If I wanted to wire money, two banks would need to get involved, a local Thai one and the US-based one. Routing and account numbers would be needed. Personal information would be handed over to third party banks to setup accounts. There’d be paper work. The cost of each wire transfer (roughly $40 USD) means a minimum amount needs to be sent to make it worthwhile. Finally, it may take 3–5 business days or longer with holidays.
The problem here is friction: time and cost of transactions.
Furthermore, you’d have to trust the banks not to lose your money along the way; not to get hacked and expose your data. Being third parties to your transaction, they represent a security hole. Setting aside banks, let’s take stock of all the data breaches from large organizations recent memory. Here are sixteen of the largest data breaches of the 21st century.
That could be your data being compromised (i.e., bank records, credit card info, other personal data). Thus, fundamental to the bitcoin white paper is avoiding the need to rely on trusted third parties.
Nakamoto proposed a payment system based on cryptographic proof, allowing transacting parties to interact directly, without third parties.
The system involves public-private key pairs (also known as asymmetrical cryptography), cryptographic hash functions and digital signatures to allows different owners, as the funds change hands, to verify chain of ownership.
Someone sending you funds will send it to your bitcoin address (tied to the public portion of the key pair) in your wallet. You, and only you, have knowledge of your private key. What everyone else sees is the (public) bitcoin address. Because it is part of the same key pair, only your private key can access funds that are sent to your address (note: It works the same way when you transfer funds from a cryptocurrency exchange, which is a third-party security hole, to your wallet).
Problem: Double Spend
Although asymmetrical cryptography allows verification that a transaction took place, it’s difficult to tell if one of the previous owners double-spent. Bitcoin is digital. Suppose I send funds to Bob, but also wanted to send the same funds to Carol. What’s stopping me from essentially making duplicates? The digital nature of bitcoin makes double-spending particularly problematic.
Traditionally, a trusted third party would be hired to check against double-spending, but again, we’re trying to avoid relying on a third party.
Solution: Timestamp Server
Nakamoto reasoned that in order for a receiver to know that the previous owners of the funds did not double-spend, participants need to agree on a history of the chronological order in which transactions were made. If I send the same funds from my private keys to two different bitcoin addresses, say Bob and Carol, then both of them would feel better knowing that they were first to receive. This requires time-stamping transactions. Each timestamp includes previous timestamps (from all previous transactions) and this forms a chain or a chronological history of all transactions. To obviate the need for a third party, this history needs to be publicly announced to everyone in the network. In other words, the goal is to implement a distributed server filled with all timestamped transactions.
Distributed over what? Over the network of computers participating in this payment system.
Problem: How do we know that the history is really agreed on by the network?
Solution: Consensus Mechanism
In this context, consensus is a process the network uses to validate transactions. A new transaction is first broadcasted to all computers (or nodes) in the network. While everyone receives the broadcast and gets working on creating a block — only one node will be chosen to create the block.
The process of determining which node is chosen is called proof-of-work (PoW). This is often described as solving a difficult math equation, requiring expending the necessary energy and computing power. There is no shortcut to proof-of-work, the difficulty of the equation requires committing a certain level of electricity. The equation being solved is a cryptographic hash function (SHA-256 hash).
Once the equation is solved, a new block is created. As a miner, once I have spent the energy, power and time to creating a block, I must verify that the transaction I will commit to the block is valid because if I fail to do this, then my work will have been for nothing. Other nodes will only accept the block onto the main chain (hence, blockchain), if all the transactions in it are valid and not already spent. You know your block is accepted when the next block is created using the hash in your block as the previous hash. In this way, miners play an important role of validating transactions on the network, ensuring its fairness and security.
The majority of the network’s nodes will decide the acceptance of your block. This process is how all the nodes in the network come to consensus.
Blockchain is often used interchangeably with distributed ledgers or a public database of all transactions. Nodes that perform proof-of-work are competing to make an entry into the distributed, shared ledger. The ledger is distributed as it is broadcasted to the network, where everyone can examine all transactions without a central server handling the data.
All transactions verified and in chronological order are stored in the ledger. To support multiple and growing numbers of transactions, ledgers need to be created (or mined). Nakamoto likened this process to miners expending resources to find gold, so people using their computers to build blocks in the blockchain are referred to as miners.
Here’s a visual look at the bitcoin blockchain:
Problem: How do we deal with dishonest actors?
Solution: Make it computationally impractical for an attacker to change a block.
In this event, the dishonest sender (attacker) might lead you to believe that he had sent a payment to you, only to switch the money back to himself. Payment is sent to your address, you wait until the transaction has been confirm. Meanwhile, the attacker starts creating an alternate chain. He’d have to redo the proof-of-work of that block and all blocks after it to catch up and surpass the original chain. The attacker is playing catchup. This is referred to as binomial random walk; a race between the attacker and the honest chain.
Nakamoto ran calculations to show that the probability of an attacker catching up to the honest chain is very small, especially with the addition of a new block.
Given the computational power required to change a proof-of-work for one block and all subsequent blocks, it would be very impractical. Therefore, when the blockchain is described as being immutable, it’s not technically accurate. It can be changed, but doing so would be immensely impractical and, not in the best interests of any actors.
Problem: Since the system relies on majority vote, what if one node (an attacker) overpowers the network and orchestrates majority vote?
Solution: Create incentives so everyone plays by the rules.
The attackers would need to create what is referred to as a 51% attack — where they would amass more computing power than the rest of the network combined (hypothetically 49%). They would broadcast to the community what the longest proof-of-work chain was (and the network would agree because the they controlled most of the network).
The proof-of-work process is expensive (in terms of computing power, energy and financial costs), so this acts as one deterrent against adding a dishonest block. This is even more expensive when one considers the resources needed to mount a 51% attack.
Nakamoto remarked of a would-be attacker:
He ought to find it more profitable to play by the rules, such rules that favour him with more new coins than everyone else combined, than to undermine the system and the validity of his own wealth. (Nakamoto, 2008, p. 4).
Not only do incentives encourage people to play by the rules, it also attracts participation to grow the network. Miners who successfully demonstrate proof-of-work are rewarded with bitcoin. They’re incentivized to support the network. This allows for a way to initially distribute coins into circulation, given that there is no central bank to issue them. The network of individual nodes, essentially becomes the bank. All cryptocurrencies (altcoins) face a similar issue of needing to incentivize adoption. Each cryptocurrency can therefore be viewed as mini-economies that need participants.
Problem: Can bitcoin be continually created leading to inflation?
Solution: The bitcoin protocol has a controlled monetary supply. The number of bitcoin will never exceed 21 million coins.
This is algorithmically designed by Nakamoto and is a function of:
1. Initial block rewards for miners (50 BTC) that halves over time
2. Target number of blocks issued per hour (6 blocks)
3. Halving period (4 years)
To calculate, take the number of total blocks generated per 4-year cycle:
6 (blocks / hours) * 24 (hrs/day) * 365 (days/yr) * 4 yrs = 210,240 (~210,000)
Sum all the reward sizes, started at 50 BTC/block in the early days (halving every four years):
50 (2009) + 25 (2013) + 12.5 (2017) + 6.25 (2021 Est) + 3.125 (2025 Est) + 1.5625 (2029 Est) + 0.78125 (2033 Est) + 0.390625 (2037 Est) + … = 99.21875 (approaching 100)
Multiply number of blocks by reward size = 210,000 * 100 = 21 million. See here for original calculations.
This site shows BTC reward / block from January 3rd 2009 (50 BTC) to July 9th 2016 (12.50 BTC) with estimates for block rewards going down to 6.25 by 2021.
See here for a countdown till the next halving event.
Since bitcoin’s monetary supply is controlled, inflation is not a concern as it is with fiat currency and will not have a negative effect on purchasing power.
These are the words bolded throughout the article. These words will continue to be discussed in the space as you go beyond this white paper:
· Trusted third parties: The reason bitcoin exists in the first place. Later on, blockchains will be discussed in the context of eliminating the need for all third parties, or intermediaries, not just those in the financial sector. Not having to trust a third party, or central authority, means the network is decentralized. It is decentralization that makes bitcoin, and by extension, similar protocols so potentially disruptive. I find it interesting that some will argue against the validity of bitcoin as a currency because it is not currently backed by a central bank.
· Cryptographic hash function: We saw two applications from this whitepaper, the use of 160-bit hash to convert public portion of the key pair into a bitcoin address and the SHA-256 hash used in finding proof-of-work. This is essentially the crypto in cryptocurrency.
· Public-Private Key pair (technically: ECDSA key pairs): The important thing is that only YOU know your private key. Your address is a hash of the public key. This is your “wallet”.
· Address (tied to public portion of key pair): see above
Cryptocurrency Exchanges: For interested investors, these are the places to exchange your fiat currency for cryptocurrency. Here’s a list. Once you trade, it’s generally NOT a good idea to keep your currency in these exchanges as they are third parties and represent security holes. Here are some high-profile hacks in the past.
· Double-Spend: When someone sends you and another person the same funds. You and the other person are both waiting for unconfirmed transactions to clear (six additional blocks added generally signals confirmation).
· Distributed: In order to avoid channeling anything through a central entity (or third party), copies of the blockchain are distributed. The process of verification and mining are also distributed. In a way, the functions and responsibilities of a bank are distributed to miners in the system. Other responsibilities like creating new ledger and securing the network are also distributed to nodes.
· Network: Someone may ask, but where is it? Where is this blockchain? All nodes (or computers) that are part of the bitcoin network have a copy of the blockchain. They are notified when a new block has been verified and ready to be added to the blockchain. The majority of miners in the network will determine that a block is ready to be added to the main ledger.
· Chain: When funds are sent, they are time-stamped, marking the present transaction. But this also includes previous time-stamps from past transactions forming a chronological history of events, in a chain.
· Block: Created to store transaction details, once a miner finds a proof-of-work, then verifies a transaction, the block is broadcasted to others in the network.
· Blockchain: Multiple transactions that are chained together with time-stamps after time-stamp dating back to the first transaction are stored on a ledger; this is a history of chronological events. Blockchain is often called distributed ledger technology because this history is distributed to all participants in the network.
· Consensus: A process where transactions get validated and added to the ledger. This is done via majority vote; when the majority of the nodes accept a transaction, it gets added to the blockchain.
· Proof-of-work: A process by which it is determined which node gets to create the next block to verify the next transaction. This involves finding a SHA-256 hash output from an input. The proof is where a node demonstrates that it should have the authority to verify the next transaction by exerting power and energy. The power and energy is necessary to ensure that miners do their job and keep the network fair and secure.
· Ledger: A book that records transactions. A distributed ledger is when everyone in the network has a copy of the ledger. Blockchains are merely a subset of distributed ledger technologies.
· Miner: A node in the network. Someone who demonstrates proof-of-work to claim the right to verify a transaction by creating or mining blocks.
· Attacker: Someone who attempts to double-spend or alter a past block in any way. The paper has calculated how it becomes increasingly impractical for an attacker to do this with each added block.
51% attack: Theoretically when an attacker amasses more computing power than the rest of the network combined and is able to orchestrate majority vote. Although discussed in a hypothetical sense, this is a real concern, particularly when miners are pooling their resources.
· Incentives: Miner get rewarded for creating blocks. It was initially 50 BTC, but this rate gets halved every four years. Aside from incentivizing miners, this was Nakamoto’s way of distributing bitcoin throughout the network, making it and other cryptocurrencies, not unlike mini-economies with payment exchanged for goods and services.
· Monetary supply: Bitcoin has a fixed monetary supply of 21 million coins.
· Transaction times: Bitcoin was designed to solve problems that have plagued sending money through the traditional inter-bank systems, including slow transaction times. Nevertheless, with the growing popularity of bitcoin, people have complained about its transaction time.
· Permissionless: This is not mentioned in the paper, but it gets thrown around a lot. Bitcoin blockchain, which is permissionless, means anyone can join the network and start mining and participate in the consensus process. There is no central authority acting as a gate keeper for the Bitcoin blockchain (it would be ironic if there were).
Censorship resistance: This is also not mentioned in the paper. But the decentralized nature of bitcoin means no government can demand that it get shut down.
Hodl: A bonus.
There you have it. In nine pages, Satoshi Nakamoto, laid the foundation for a peer-to-peer payment system with a distributed ledger technology, that is changing the world. This is what the fuss is all about. What’s remarkable is that it only took nine pages; I am equally impressed with Nakamoto’s brevity as I am with his technological ingenuity. When this white paper was discreetly dropped in an obscure forum in 2008, no one knew that bitcoin would become mainstream.