What is the Blockchain?
Blockchain! Blockchain! Blockchain! It’s all over the news right now, mainly because of the rapid rise in price of Bitcoin. The sudden spike in public awareness has a lot of people looking for a non-techie explanation of what a blockchain is.
So, I’m going to try and explain what a blockchain is without resorting to crypto-jargon. Ready? Let’s go!
What is blockchain technology?
Simply put, a blockchain is a database. In other words, a blockchain is a structured way of ordering and storing data that makes the data easy to retrieve on demand.
Sounds boring, right? Well, it kind of is.
By itself, a blockchain is not particularly revolutionary. Databases have been around for decades and are well understood.
What makes a blockchain special is how it can be used to maintain a trusted public record of transactions without the need for a trusted third party to validate the transactions.
In other words, people around the world can transact with each other without having to trust each other, and without having to trust a third party to guarantee everyone’s trustworthiness. What??
The way this untrusted-but-valid agreement system is handled is called “distributed consensus”, which is really the key innovation of blockchain technology. I’ll cover distributed consensus in a separate post. For now, let’s just focus on blockchain.
A blockchain builds on the database concept by imposing a few extra rules:
- Tables in the database can be read but can’t be changed or removed. For the purposes of this discussion, think of a database table as a “block”. This table, or block, will record one or more transactions that happened between parties in the network.
- Anyone who wants the right to add data to the database has to maintain a full copy of the database. This means a full copy of the database is distributed on different computers all over the world, and each party with a copy is responsible for keeping their local database copy up-to-date with all new blocks.
- A new “block” can only be added to the database if the majority of parties maintaining copies agree the block is valid. In other words, there must be “consensus” on what goes into the database.
- Every new transaction in the database is derived from a previous transaction in the database, so there is a link between transactions. This linking forms a “chain” of blocks going all the way back to the very first block added to the database. This is where the term “blockchain” comes from.
- Once a new block is agreed upon, everyone who maintains a copy of the database must add the new record to their local copy in order to keep all copies up-to-date.
In the case of Bitcoin, the blockchain is recording changes in ownership of individual bitcoins. Just like with a checking account, each transaction builds off of a previous transaction.
As a real world example, your paycheck deposit would constitute a transfer of dollars ownership from your employer to you. Paying your utility bill with the dollars you were paid with constitutes a transfer of dollars ownership from you to the electric company.
The utility payment is derived from the paycheck deposit, so there is a link between them.
At a very basic level, this is what a blockchain transaction looks like. In the case of Bitcoin, substitute “bitcoins” for “dollars” and you have the basic idea.
Where is the blockchain stored?
A copy of the blockchain database is stored on every computer participating in the blockchain network. There is no single centralized copy that can be corrupted or hacked.
Depending on how many participants there are in the network, copies of the blockchain database could potentially be stored on millions of computers all over the world, with the contents easily accessible to anyone on the internet.
What can be done with a blockchain?
Each new block added to the blockchain database contains a record of one or more transactions that took place in the network. In the case of Bitcoin, those transactions record the transfer of Bitcoin ownership between two or more parties.
Cryptocurrencies are the most visible use for blockchain technology right now. However, blocks in a blockchain aren’t limited to recording changes in cryptocurrency ownership.
A blockchain can serve as a record for anything that changes state or status, provided that once changed the new state or status cannot be revoked (in other words, the change of state is immutable).
A blockchain provides a way to build a decentralized public clearinghouse for transactions without the need for a trusted third party to validate transactions.
What can’t be done with Blockchain?
Since a blockchain is just a database, it could in theory be used for anything a regular database can be used for.
In reality, a blockchain is actually not a good fit for use cases where a regular database will do.
For example, if the data stored in the database is subject to change, like keeping grades and attendance records for students at a university, a blockchain is not a good fit.
In this case the university needs a regular database, not a blockchain, because they need to be able to modify and remove existing records as new students arrive and older students leave.
If everyone who will be accessing the database is a trusted party, a blockchain isn’t a good fit.
In the case of the university, no one outside of the university will likely need access to the student database, so there is no need for distributed consensus on the contents of the database.
A few people at the university can be trusted as the central authority on what constitutes a valid entry in the student database. There is also no need for more than one copy of the database, aside from regular backups.
If there is no relationship between the entries in the database, a blockchain isn’t a good fit.
Transactions in a blockchain build off of older transactions recorded in older blocks.
In the case of the university, there is no transactional relationship between the students that needs to be recorded, so each student record is self-contained.
Since there is no need to chain student records together, there is no need for a blockchain.
So there you have it. In summary, a blockchain is a database with the following properties:
- The contents can’t be changed or removed.
- A full copy is maintained by everyone who uses it.
- New entries can only be added if the majority of people using it agree the entry is valid.
- Each new entry in the database links back to previous entries, forming a transaction chain going all the way back to the original block.
- Everyone must add each new entry to their local copy once the majority agrees the entry is valid.
I’ll address the question of what distributed consensus is in a separate post.
About the Author
I'm a software engineer with a background in presenting simple explanations of complex topics. My goal is to explain the technologies shaping our world in terms that my non-tech friends and family will understand.