Thursday, August 29, 2019

Blockchain


Anyone who has watched any technology channel news or followed any technology blog in the last few years has probably heard about blockchain. It has been touted as everything from the future of computing to the formation of a global currency and payment method. None of us know what the future of any technology holds, but blockchain has a very promising future.

So what is blockchain? Blockchain is a growing list of related records called blocks that are linked using cryptography. Each block contains an encrypted hash of the previous block, a timestamp and transaction data. A hash is an abbreviated version of the actual data, it perfectly represents the data, but cannot be reversed to display the data. This makes it possible for a block to verify the previous block by the matching hash, without knowing the data stored in the previous block. The timestamp works to track the transaction in time and prevent the block from being modified once written as any change to the data or the timestamp will change the hash, breaking the chain. You can think of a blockchain loosely like a notebook with a carbon copy of the previous page overlaid at the top of the current page, and a page is only a valid part of the book if it matches the previous page.

The high resistance to changing the data makes it a great tool for representing an open ledger, that can be widely distributed across multiple systems. This network of systems can each independently create new blocks in the chain linked to a previous block, and they are all shared across the network to every other system. Once a block is added to the chain, it cannot be modified without altering all the subsequent blocks in the chain. To modify the subsequent blocks, every system in the network must agree to the change. This allows very large groups of people to access the ledger and track transactions without the worry that someone else in the network can modify the data.

Blockchain was invented by an anonymous person or group of people under the penname Satoshi Nakamoto in 2008 to serve as the transactional ledger for bitcoin. This allowed bitcoin to become the first electronic currency to solve the problem of double-spending without the need for a trusted authority or central server. The first work on a secure chain of data blocks was first described in 1991 by Stuart Haber and W. Scott Stornetta. Their work was designed to prevent timestamps of documents from being modified after creation. In 1992, Bayer, Haber and Stornetta incorporated Merkle trees to the design, improving the efficiency by allowing several document certificates to be collected into a single block. Nakamoto improved their design by using a hash function to link the blocks without requiring new blocks to be signed by an authority. This modification allowed blocks to be added by any source and still be considered trusted because they could not be altered.

The words block and chain were used separately in Nakamoto’s original paper but were popularized as a single term in early 2016. What makes blockchain such a powerful tool is that it creates a digital ledger that does not require a central server, can be made entirely public and is shared across many computers. Any involved record cannot be altered retroactively, without altering all the future transactions. This allows any participant in the chain to verify and audit transactions independently and inexpensively. The mass collaboration between the peers within the system creates a robust workflow by its very nature. A blockchain cannot be independently reproduced, enforcing that each unit of value is only able to be transferred once, solving a long-standing problem of double-spending in digital currencies. 

Blockchain is another technology like cryptography that will be impacted by quantum computers, but blockchain, unlike cryptography, will be impacted in a positive manner. Quantum computing will improve the speed of blockchain transactions but will have no impact on the security of the chain.
I realize that there were many technical terms used in this article that may be unfamiliar to you, so in the coming weeks I will cover hashes and Merkle trees in more detail. For now, it is enough to state that they are methods of linking, storing and verifying data heavily used in blockchain technologies.

No comments: