Computers, code, and a ledger
Last updated
Last updated
The Bitcoin system is a large network of over 100.000s of computers that are distributed across the world and that are owned by many different individuals and corporations. In fact, you yourself can choose to become a part of this network, helping maintain and operate Bitcoin.
All these computers run a software application called Bitcoin Core that allows them to be a part of the network and communicate with the other computers.
These computers also store some information in their own database, similar to how your computer stores information on its hard-drive. In fact, each computer stores and maintains the exact same data, so that all computers are in agreement on what is true.
The data that is stored by such a computer consists of information on transactions of the bitcoin currency from one address to another. Essentially, they store a long, chronological list of all transactions of bitcoin that have ever taken place in the entire history of the network. Because it is a database of transactions, it is often referred to as a ledger.
These computers that run this software and store this database of transactions are called the nodes of the Bitcoin network.
Note When we say "computers", we are generally not referring to the types of computers that we personally use every day such as laptops or desktop computers or mobile phones. Rather, these are simpler, specialized computers with fewer bells and whistles often dedicated to a particular task. As such, most of these nodes just focus on this one task of being connected to the network and maintaining the database of bitcoin transactions.
Because each node tracks all bitcoin transactions that have ever taken place in its own ledger, they all know exactly how much each address owns, by knowing exactly how much bitcoin was sent to an address, and how much bitcoin was sent from an address. The entire network reaches agreement on what bitcoin transactions to add to their ledger by speaking according to a specified protocol, or set of rules (more on this in a bit).
What we end up with is a large network of globally distributed computers called nodes that collectively keep track of who owns how much bitcoin. This means there is no single point of failure or control. That is a remarkable trait: because the system underpinning the bitcoin money is distributed all over the world, it is virtually impossible to be taken down if some adversary would desire to do so.
Furthermore, there is no locus of power that is the arbiter of truth; there is no central party deciding what data is true - and thus who owns what. This resembles ownership of physical gold: what somebody owns is not determined by some entity, it is simply the result of what transactions have actually happened.
There are of course some important things to address:
With all these nodes spread across the world keeping their own ledger, how do they agree on what is the true history of bitcoin transactions? And how do they decide what new transactions are added to the ledger?
How do we ensure that only the owner of an address can send bitcoin from it, if other people are the ones adding transactions to the ledger? And how do we ensure an owner cannot send more than the amount of bitcoin they own?
Where do or did bitcoins come from in the first place? Who has issued these bitcoins in circulation and what makes it different from a central bank issuing currency?
How does somebody receive bitcoin and how do they go about sending bitcoin?
We will answer these questions in the next segments. For now, what is important to understand is that Bitcoin exists only because of a large network of globally distributed computers that all run the same piece of software and that all maintain the exact same database, or ledger, of what bitcoin transactions have taken place in the past.