Skip to main content

What Is Bitcoin?

Invented in 2009 by an unknown person working under the pseudonym "Satoshi Nakamoto," Bitcoin is a distributed ledger which stores information about payments.

An unlimited number of independent computers can store this ledger, and they communicate over a peer-to-peer network which is very difficult to disrupt.

Why is Bitcoin payment data durable?

Bitcoin data is written in a series of "blocks", which are records on the ledger. These blocks store transaction data, and are produced about once every ten minutes.

These blocks are "chained" together, so that each block contains a reference to the previous block. This is why the ledger is called a "blockchain."

You can also think of the blockchain as big list that keeps growing continuously and is nearly impossible to change.

Writing a block takes an enormous amount of computing power.

To modify a block, an attacker would have to match the amount of computing power achieved by the entire Bitcoin network, and, as blocks are buried beneath new blocks, they become increasingly difficult to modify, because all blocks newer than the modified block would also have to be modified.

Since its creation, computer scientists and cryptographers have tried to find flaws in Bitcoin's system, and failed. Even if the most powerful governments or private companies tried to assemble enough computing power to change a block or blocks, it is very unlikely they could succeed.

Why is the Bitcoin software durable?

Bitcoin is based on open-source software, which anyone can read, download, and run on their own computer. The software, called "Bitcoin Core", is available to everyone in a public code repository on Github.

That a completely public piece of software, which could theoretically be modified by anyone, should be so secure, might be counter-intuitive.

After all, aren't most valuable things stored in some kind of "secret" way? For example: gold stored in a bank vault, with a secret password that only the bank knows?

This is what is so revolutionary about the Bitcoin software. Bitcoin is "Consensus Software."

You are free to download Bitcoins and modify it in any way you choose, but, once you start running the software and communicate with other individuals running Bitcoin software, those other individuals (called "nodes") will refuse to interact with you if you are running software which does not follow the consensus rules.

If those nodes refuse to interact with you, then you will be unable to write transaction data to the Bitcoin ledger.

And changing Bitcoin's software and consensus rules, is very, very hard. Any time a change is proposed to Bitcoin, it is comprehensively reviewed by a large, diverse, and distributed set of software developers.

To learn about Bitcoin, you don't need to know how to program computers or write software, but let's look now at Bitcoin's software repository, on Github, to get sense of the scale and seriousness of the project.

A glance at Bitcoin's code repository

Here is bitcoin's "Code" page on Github, captured in March of 2024:

Bitcoin Core on Github
Bitcoin Core on Github

On the upper-left...

...we can see that this software is uniquely identified as bitcoin/bitcoin, that is, the bitcoin software in the bitcoin repository.

Let's look next at the Pull Requests page,

pull requests on Github
pull requests on Github

Here we can see some interesting things. A pull request is when one programmer asks to have his/her new code incorporated into the official software repository.

You can see here a record of 20,057 "closed" and 329 "open" pull requests. Each one of these represents an instance of a programmer or team of programmers asking to modify the Bitcoin code. Almost all of these requests are seriously considered by the community, and then rejected.

You can see that each pull request has some kind of title, like Remove - mempoolfullrbf option, and has a number of comments, like 254.

And if you drill into one of these pull requests, such as...

pull request discussion
pull request discussion

... You will find discussions incorporating several hundred developers, each adding little comments and bits of code to this complicated and very secure machine.

Paradoxically, Bitcoin's software is so secure because it is so public, and because there are so many smart people working on it, completely in the open.

Any proposed changes to Bitcoin Core, no matter how small, go through an exhaustive public review process.

Bitcoin is like the U.S. Constitution

The Constitution of The United States was written in 1787.

the United States Constitution
the United States Constitution

Bitcoin, like the Constitution, is hard to modify

The U.S. Constitution has been modified twenty-seven times. There is a process to modify it: It's called "amending" the Constitution, and it has only happened for really important reasons, like to outlaw slavery (13th amendment), and to given women the right to vote (19th amendment).

It's important that the Constitution can change, but it has never been easy to modify the Constitution: It is very hard to assemble enough votes among the U.S. states to pass an amendment to the Constitution.

Modifying Bitcoin is also really difficult. Changes to Bitcoin can only be made if there is a consensus among the developers and users to make a change. This consensus have been difficult to reach historically, and as Bitcoin grows, it get more and more difficult every year.

Bitcoin's code, like the Constitution, is a distributed document

Like the Constitution, Bitcoin is hard to change. But there is another similarity: Thousands of copies of the Constitution exists in school, libraries, and offices, in every state of the country.

This fact enhances the durability of the Constitution.

Let's say a malicious individual wanted to unilaterally modify the Constitution, without attempted to follow the "amendment" rules.

This malicious individual could copy the Constitution, change the text, print it again, and perhaps go to their local public library, and swap out that library's copy of the "real" Constitution with a new "modified" version.

But that wouldn't matter much, because although this one copy might have been modified, there are thousands of other copies of the "real" document, distributed all over the country, and it would be impractical, or actually impossible, for this individual to swap out enough of those copies to make any kind of impact.

Bitcoin's code is similar. It exists (as we have seen) on Github, but also exists on the hard drives of hundreds of thousands of developers and hobbyists, all over the world, and modifying the code on these people's hard drives would be impossible to achieve at a big enough scale to make a difference.

Bitcoin developers are like constitutional lawyers and judges

Bitcoin development is similar to the practice of constitutional law.

Not only is Bitcoin's code very difficult to change, but there is an enormous amount of time and energy being dedicated to the discussion, interpretation, and implementation of the existing code.

A great way to get a feel for the level of seriousness of Bitcoin development is to directly compare it to the work of the United States Supreme Court, a body whose only task is to interpret and implement the requirements of the U.S. Constitution.

First, go to this page where Supreme Court oral arguments are published as audio recordings. Choose a case at random, and listen to five minutes of it. You will immediately be impressed by the seriousness and attention-to-detail with which arguments around interpreting the U.S. Constitution are handled. Unless you are a trained Constitutional lawyer, you probably won't understand the details, but you can easily get a feel for the proceedings.

Next, go to this page where conversations among Bitcoin Core developers are published. Like with the Supreme Court recordings, you might not understand the details, but the overall level of professionalism and seriousness is easy to absorb.

The context and subject matter is quite different, but I think you will find that there is a striking similarity in the quality and depth of the discourse between these two discussion forums.

Doesn't Bitcoin use a lot of electricity?

A common critique of Bitcoin is that it uses too much power.

Bitcoin does use an enormous amount of electricity. Bitcoins are "discovered" using computing power, and as the competition for discovering each bock intensifies, the network automatically demands more computing power, and thus more electricity.

But this is what makes Bitcoin so secure.

In order to disrupt the Bitcoin network, an attacker would have to change or replace a block in the blockchain, and do to that, the attacker would have to harness an incredible amount of electricity, more than the output of a medium-sized country.

Many other industries (sports, leisure, business, banking, etc.) also use a lot of power. The question is: Does Bitcoin provide sufficient value to society to justify its usage of energy? Many people believe that it does.

"The Bitcoin Standard: The Decentralized Alternative to Central Banking" (amazon,