What is Blockchain?
Blockchain is literally just a chain of blocks, but not in the traditional sense of those words. When we say the words “block” and “chain” in this context, we are actually talking about digital information (the “block”) stored in a public database (the “chain”).
“Blocks” on the blockchain are made up of digital pieces of information. Specifically, they have three parts:
- Blocks store information about transactions like the date, time, and dollar amount of your most recent purchases, transfer of funds to another person, etc.
- Blocks store information about who is participating in transactions. A block for a purchase would record your name along with who you sent it to. Instead of using your actual name, your purchase is recorded without any identifying information using a unique “digital signature,” sort of like a username.
- Blocks store information that distinguishes them from other blocks. Much like you and I have names to distinguish us from one another, each block stores a unique code called a “hash” that allows us to tell it apart from every other block. Let’s say you send a friend $100, and an hour later, you send them another $100. Even though the details of your new transaction would look nearly identical to your earlier purchase, we can still tell the blocks apart because of their unique codes.
While the block in the example above is being used to store a single transfer, the reality is a little different. A single block on the blockchain can actually store up to 1 MB of data. Depending on the size of the transactions, that means a single block can house a few thousand transactions under one roof.
How Blockchain Works
When a block stores new data it is added to the blockchain. Blockchain, as its name suggests, consists of multiple blocks strung together. In order for a block to be added to the blockchain, however, four things must happen:
- A transaction must occur. Let’s continue with the example of sending your friend money. After sending some money, you decide to send more
- That transaction must be verified. After making that purchase, your transaction must be verified. With other public records of information, like the Securities Exchange Commission, Wikipedia, or your local library, there’s someone in charge of vetting new data entries. With blockchain, however, that job is left up to a network of computers. These networks often consist of thousands (or in the case of Bitcoin, many millions) of computers spread across the globe. When you send your transaction, the network of computers rushes to check that your transaction happened in the way you said it did. That is, they confirm the details of the transaction, including the transaction’s time, dollar amount, and participants.
- That transaction must be stored in a block. After your transaction has been verified as accurate, it gets the green light. The transaction’s dollar amount, your digital signature, and your friend’s digital signature are all stored in a block. There, the transaction will likely join hundreds, or thousands, of others like it.
- That block must be given a hash. Not unlike an angel earning its wings, once all of a block’s transactions have been verified, it must be given a unique, identifying code called a hash. The block is also given the hash of the most recent block added to the blockchain. Once hashed, the block can be added to the blockchain.
When that new block is added to the blockchain, it becomes publicly available for anyone to view — even you. If you take a look at Bitcoin’s blockchain, you will see that you have access to transaction data, along with information about when (“Time”), where (“Height”), and by who (“Relayed By”) the block was added to the blockchain.
Is Blockchain Secure?
Blockchain technology accounts for the issues of security and trust in several ways. First, new blocks are always stored linearly and chronologically. That is, they are always added to the “end” of the blockchain. If you look at Bitcoin’s blockchain, you’ll see that each block has a position on the chain, called a “height.” As of August 31, 2019, the block’s height had topped 592,517.
After a block has been added to the end of the blockchain, it is very difficult to go back and alter the contents of the block. That’s because each block contains its own hash, along with the hash of the block before it. Hash codes are created by a math function that turns digital information into a string of numbers and letters. If that information is edited in any way, the hash code changes as well.
Here’s why that’s important to security. Let’s say a hacker attempts to edit your transaction with your friend so that you actually have to pay more. As soon as they edit the dollar amount of your transaction, the block’s hash will change. The next block in the chain will still contain the old hash, and the hacker would need to update that block in order to cover their tracks. However, doing so would change that block’s hash. And the next, and so on.
In order to change a single block, then, a hacker would need to change every single block after it on the blockchain. Recalculating all those hashes would take an enormous and improbable amount of computing power. In other words, once a block is added to the blockchain it becomes very difficult to edit and impossible to delete.
To address the issue of trust, blockchain networks have implemented tests for computers that want to join and add blocks to the chain. The tests, called “consensus models,” require users to “prove” themselves before they can participate in a blockchain network. One of the most common examples employed by Bitcoin is called “proof of work.”
In the proof of work system, computers must “prove” that they have done “work” by solving a complex computational math problem. If a computer solves one of these problems, they become eligible to add a block to the blockchain. But the process of adding blocks to the blockchain, what the cryptocurrency world calls “mining,” is not easy. In fact, according to the blockchain news site BlockExplorer, the odds of solving one of these problems on the Bitcoin network were about 1 in 5.8 trillion in February 2019. To solve complex math problems at those odds, computers must run programs that cost them significant amounts of power and energy (read: money).
Proof of work does not make attacks by hackers impossible, but it does make them somewhat useless. If a hacker wanted to coordinate an attack on the blockchain, they would need to solve complex computational math problems at 1 in 5.8 trillion odds just like everyone else. The cost of organizing such an attack would almost certainly outweigh the benefits.
Blockchain vs. Bitcoin
The goal of blockchain is to allow digital information to be recorded and distributed, but not edited. That concept can be difficult to wrap our heads around without seeing the technology in action, so let’s take a look at how the earliest application of blockchain technology actually works.
Blockchain technology was first outlined in 1991 by Stuart Haber and W. Scott Stornetta, two researchers who wanted to implement a system where document timestamps could not be tampered with. But it wasn’t until almost two decades later, with the launch of Bitcoin in January 2009, that blockchain had its first real-world application.
The Bitcoin protocol is built on the blockchain. In a research paper introducing the digital currency, Bitcoin’s pseudonymous creator Satoshi Nakamoto referred to it as “a new electronic cash system that’s fully peer-to-peer, with no trusted third party.”
Here’s how it works:
You have all these people, all over the world, who have Bitcoin. According to a 2017 study by the Cambridge Centre for Alternative Finance, the number may be as many as 5.9 million. Let’s say one of those 5.9 million people wants to spend their Bitcoin on groceries. This is where the blockchain comes in.
When it comes to printed money, the use of printed currency is regulated and verified by a central authority, usually a bank or government — but Bitcoin is not controlled by anyone. Instead, transactions made in Bitcoin are verified by a network of computers.
When one person pays another for goods using Bitcoin, computers on the Bitcoin network race to verify the transaction. In order to do so, users run a program on their computers and try to solve a complex mathematical problem, called a “hash.” When a computer solves the problem by “hashing” a block, its algorithmic work will have also verified the block’s transactions. The completed transaction is publicly recorded and stored as a block on the blockchain, at which point it becomes unalterable. In the case of Bitcoin, and most other blockchains, computers that successfully verify blocks are rewarded for their labor with cryptocurrency. (For a more detailed explanation of verification, see: What is Bitcoin Mining?)
Although transactions are publicly recorded on the blockchain, user data is not — or, at least not in full. In order to conduct transactions on the Bitcoin network, participants must run a program called a “wallet.” Each wallet consists of two unique and distinct cryptographic keys: a public key and a private key. The public key is the location where transactions are deposited to and withdrawn from. This is also the key that appears on the blockchain ledger as the user’s digital signature.
Even if a user receives a payment in Bitcoins to their public key, they will not be able to withdraw them with the private counterpart. A user’s public key is a shortened version of their private key, created through a complicated mathematical algorithm. However, due to the complexity of this equation, it is almost impossible to reverse the process and generate a private key from a public key. For this reason, blockchain technology is considered confidential.
Public & Private Keys
Here’s the “Explain it Like I’m 5” version: You can think of a public key as a school locker and the private key as the locker combination. Teachers, students, and even your crush can insert letters and notes through the opening in your locker. However, the only person that can retrieve the contents of the locker is the one that has the unique key. It should be noted, however, that while school locker combinations are kept in the principal’s office, there is no central database that keeps track of a blockchain network’s private keys. If a user misplaces their private key, they will lose access to their Bitcoin wallet.
In the Bitcoin network, the blockchain is not only shared and maintained by a public network of users—but it is also agreed upon. When users join the network, their connected computer receives a copy of the blockchain that is updated whenever a new block of transactions is added. But what if, through human error or the efforts of a hacker, one user’s copy of the blockchain manipulated to be different from every other copy of the blockchain?
The blockchain protocol discourages the existence of multiple blockchains through a process called “consensus.” In the presence of multiple, differing copies of the blockchain, the consensus protocol will adopt the longest chain available. More users on a blockchain mean that blocks can be added to the end of the chain quicker. By that logic, the blockchain of record will always be the one that most users trust. The consensus protocol is one of blockchain technology’s greatest strengths but also allows for one of its greatest weaknesses.
Theoretically, it is possible for a hacker to take advantage of the majority rule in what is referred to as a 51% attack. Here’s how it would happen. Let’s say that there are 5 million computers on the Bitcoin network, a gross understatement for sure but an easy enough number to divide. In order to achieve a majority on the network, a hacker would need to control at least 2.5 million and one of those computers. In doing so, an attacker or group of attackers could interfere with the process of recording new transactions. They could send a transaction — and then reverse it, making it appear as though they still had the coin they just spent. This vulnerability, known as double-spending, is the digital equivalent of a perfect counterfeit and would enable users to spend their Bitcoins twice.
Such an attack is extremely difficult to execute for a blockchain of Bitcoin’s scale, as it would require an attacker to gain control of millions of computers. When Bitcoin was first founded in 2009 and its users numbered in the dozens, it would have been easier for an attacker to control a majority of computational power in the network. This defining characteristic of blockchain has been flagged as one weakness for small cryptocurrencies. User fear of 51% attacks can actually limit monopolies from forming on the blockchain, hence the decentralized nature of Bitcoin.