As suggested by our previous articles, money today is increasingly taking a new digital form. Cryptocurrencies have emerged as strong alternatives to fiat currencies. However, before we explore the strengths and weaknesses of cryptocurrencies such as Bitcoin, it is important to understand the core technology that gave rise to this monetary innovation.
History of Blockchain
The earliest mention of a blockchain-like technology dates back to a 1982 paper titled “Computer Systems Established, Maintained, and Trusted by Mutually Suspicious Groups”. Further updates and improvements to the concept were described by various individuals in 1991 and then in 1992. Yet, it wasn’t until 2008 that the modern definition of blockchain was conceptualized by a group or a person going by the pseudonym of Satoshi Nakamoto.
Nakamoto, universally acknowledged as the father of blockchain, cryptocurrencies, and Bitcoin, started it all with the publication of his now-famous white paper titled “Bitcoin: A Peer-to-Peer Electronic Cash System”. In it, he describes the foundational structures and systems that would eventually power bitcoin and a plethora of other blockchain-based projects.
In January of 2009, Nakamoto released the first version of his bitcoin software, mined the genesis block, and officially gave birth to blockchain technology. He continued to personally make improvements and updates to the source code until mid-2010. Then, before disappearing, he transferred control and ownership of all aspects of the project to other active and well-known developers in the bitcoin community. His last verified message was in 2011 when in an email he stated that bitcoin was “in good hands”.
Functions of Blockchain
At its most basic level, a blockchain functions as a digital ledger. A ledger is simply a record of transactions. If you recall, in the article Digital Payments and Currencies, we discussed the basic method or mechanism that a bank uses to prove its customers’ ownership of funds. When you deposit money into a bank, you no longer have physical possession of your funds. The only proof that those funds still belong to you is the record that the bank maintains. Any time you withdraw or deposit money into your account, the proper deductions or additions are automatically applied to your record. However, although the basic function is the same as any standard ledger (mainly to record data or transactions in chronological order), multiple key elements differentiate blockchains from their traditional counterparts.
Structure of Blockchain
While a bank’s digital ledger or a small business’ physical ledger may be stored in a centralized location under the control of the business or individual owner, a blockchain is decentralized and distributed. This means that there are multiple copies in multiple locations and no one entity has full control or ownership over the blockchain. Instead, maintaining this digital ledger is a group effort by individuals all over the world. In addition, transactions are recorded in batches known as blocks. Blocks contain information such as dates and amounts spent. These also record the parties involved in a transaction. However, rather than using actual names like a bank would, blockchains use digital signatures that essentially function as usernames. These blocks of data are then linked to each other forming an ever-growing chain of verified transactions, hence the name blockchain.
Security of Blockchain
At this point, you may be wondering, what prevents me or anyone from creating a fake block full of transactions indicating that funds were transferred to me? After all, no bank or central authority is preventing this from happening. This is a very valid concern, one that luckily is perfectly addressed by the design of the system.
You see, although anyone can in fact create fake blocks, these must fulfill certain requirements before they can be added to the chain of verified and confirmed transactions. To illustrate blockchain’s security measures let’s take a step back and start at the beginning. Before you can try to add an entire forged block to the chain, you would first need to fake a single transaction. The public key infrastructure system, a concept we introduced above, prevents this from happening. Each user has a private and public key. Every transaction a person initiates is signed using the unique private key that only they have access to. Others on the network can use the matching public (publicly available) key to verify that the signature is authentic. In other words, unauthorized transactions are not possible because malicious actors do not possess the appropriate private keys to sign such transactions. Invalid or repeated transactions are simply rejected by the system. If creating fake blocks or transactions is not a viable method of attacking the system, the only other alternative would be an attempt to modify the blocks that are already part of the blockchain. Fortunately, the system has a way of preventing this from happening as well.
A block not only contains the transaction data previously mentioned above, but it also contains a unique code to differentiate it from other blocks. This code is generated using cryptographic hash functions. This is basically a mathematical process that converts all the data in the block into a string of characters known as a hash value. However, a block’s data isn’t the only component used to generate that block’s final hash value. The final hash value is generated through the combination of that block’s data along with the hash value of the previous verified block on the chain. In essence, this is how each block becomes inexorably linked with its previous and following blocks. Modifying a single value on a block would instantly disrupt the logic of the entire chain as none of the hash values would be correct. Not only would an attacker need to modify the entire chain for this attack to work, but they would also have to alter most of the copies of the blockchain that exist across the network. The amount of time and resources required to make this happen renders attacks virtually impossible.
Uses of Blockchain
Perhaps the most well-known use for blockchain technology is cryptocurrencies. Bitcoin, the first and still by far the most dominant of these, will be covered in our next article to help us further illustrate the value and utility of blockchain. However, given that at its core, this technology is simply a method to reliably store data openly and safely, there are many other applications as well. Smart contracts, financial services, commodity trading, video games, domain names, and even insurance systems are all being redefined by blockchain technologies. It is a complex idea that continues to evolve. Make sure you read our next article in this series, What is Bitcoin?, to get a deeper understanding of this fundamental concept.