The answer to this question takes us down an extremely fascinating rabbit hole. First, a brief history lesson on what Bitcoin was trying to solve and why blockchain technology was needed.

Bitcoin aimed to solve a societal problem. If someone wanted to send money to a peer, they had to go through a bank or other centralized financial entity. Having a centralized authority to process transactions is convenient, but it has the potential to be corrupted. The financial crisis in 2008 demonstrated that we lacked a system that was both politically decentralized (no major institutions controlling it) and architecturally decentralized (‘has no central point of failure’) (Buterin 1). A person or group who went under the guise of Satoshi Nakamoto created a ‘Peer to Peer Electronic-Cash System’ that didn’t require a central authority. In 2008, Satoshi Nakamoto shared this system with the world and called it Bitcoin (Nakamoto 1). The currency to be used in transactions is also called bitcoin, but with a lowercase “b” (Hewgill 1). Since cryptography is used to secure this system, this type of currency is called cryptocurrency. You can think of bitcoin as digital cash.

Bitcoin also aimed to solve a technological problem. What initially hindered the creation of this technology was something called the “double-spending problem.” If there is no central authority to monitor how many times someone has spent a unit of currency, then there is no way to stop them from spending the unit of currency twice (Johnson). Bitcoin found a solution by combining many existing technologies, one of which was blockchain technology. Blockchain technology has existed since the 1990’s, but was only used in centralized transaction systems. Bitcoin was the first protocol to use blockchain technology in a decentralized transaction system (Aru 1). The paradigm shift from centralized to decentralized upheld the libertarian principles that went into creating Bitcoin.

Blockchain technology is also referred to as distributed ledger technology. Before diving into what a blockchain is, you should understand the concept of a distributed ledger. A ledger, in the traditional sense, is used by accountants to keep track of transactions. A distributed ledger means that everyone has a copy of the same ledger, and when something is added to one of the ledgers, all of the other copies of the ledger are updated as well. For example, in a group chat everyone has a copy of the chat on his or her phone. When someone sends a message from their phone into the chat, all of the other phones show an updated version of the conversation.

Let’s take this analogy further and say this group chat consists of tens of thousands of people. The “messages” sent in the group chat are people requesting to send bitcoins to one another. In order to become part of this chat, you have to buy bitcoins. When joining the chat, everyone knows how many bitcoins you start out with and can determine if you are trying to spend more than you have. Within this chat is a history of every transaction that has ever taken place. In the Bitcoin network, the people in this chat are actually computers that are ‘chatting’ with one another in a vast network of computers. These computers are called nodes.

First, people make a request for a transaction to occur. This is what it looks like from Eve’s phone (her node). Ben requests to send Bob 5 bitcoins. Harry requests to send Alice 6 bitcoins. Eve requests to send David 8 bitcoins.

In another example, Harry has only 10 bitcoins left and requests to send Alice 20 bitcoins. Notice that the network doesn’t allow him to send more than he has to Alice. This transaction request is therefore denied.

What is the request approval process like?

Continuing the group chat analogy, the first person who sees a request for a transaction scrolls through the chat to see if the person requesting the transaction has enough money to cover the transaction. If he or she doesn’t have enough money, the request is rejected. If the first person deems the transaction valid, he or she requests that 3 or 4 other people confirm its validity. Each of those people then request that 3 or 4 other people validate it, until everyone has validated it (Antanopolus). The nodes in the Bitcoin network go through the same process by combing through a transaction database to see if the person requesting the transaction has any enough money. The great part about this is that even if someone leaves the network, or in our case the group chat, the history of transactions still exists.

After a certain number of validated transaction requests occur in the chat, they are combined into a block and archived. A blockchain is a distributed ledger that keeps track of all blocks in chronological order. A block in a blockchain contains a group of transactions (with transaction data) as well as additional data. This additional data also contains some data from the previous block. Because of this, they form a “chain.”

The people who bundle the transactions and put them into blocks are called miners. Miners are also nodes in the Bitcoin network. When a transaction is sent into the network, a fee is paid to a miner to put it into a block. The block and transactions inside it need to be validated by every node in the network to be added to the chain.

When the majority of the nodes agree on the same state of the blockchain, this is called consensus (Johnson). Once one block has been added to the blockchain it is said to be confirmed; only then will a recipient receive the bitcoin transaction. Miners compete to add this validated block onto the blockchain. If they win they are rewarded with bitcoins. The competition uses a lot of computing power and electricity. The rules for the competition will be addressed in a later article. The competition involves a process called hashing. My next article will be on hashing (specifically SHA-256).

A quick recap!

A transaction is requested, validated, and then put into a block. Once the network validates the block a miner will add it onto the blockchain. Instead of one central authority processing everything, tens of thousands of people (nodes) do the processing. This makes it decentralized. A blockchain is a distributed ledger that holds the history of all transactions.

Until Next Time. Stay Curious!

References: