Blockchain Technology is a distributed database that allows for secure, transparent, and tamper-proof transactions. It works by storing data in “blocks” that are connected to each other in a chain. Transactions are verified by network nodes and added to the blockchain through a process called “mining”. This distributed system eliminates the need for a central authority, allowing users to transact directly with each other.
In this article, we’ll explain the blockchain by putting it into the context of a distributed database with a focus on data integrity.
A Brief History Of Distributed Databases
The first large-scale distributed database was Gnutella, which debuted with 500,000 users in 2000. The design of its successor, Napster showed that the system was a success. More than 25 million users shared files over the network by 2003, despite a slow initial adoption rate. A major problem with Gnutella was that all of its data spread across the entire network.
“This distribution makes sense for indexing and searching because it ensures that every node in the system is aware of at least one copy of the file that may contain a piece you’re looking for. But it also means that if one node on the network starts sending spam, all other nodes must tolerate receiving and storing this junk.” – From “Why The Future Of Data Depends On Blockchain Technology” (TechCrunch)
The primary problem with Gnutella was its vulnerability to attacks. It became difficult to avoid attackers who flooded the system with spam since there was no central authority to prevent them from doing so. Even worse, this meant that popular files could be nearly impossible to find as they got buried by spam. This led to several companies working on distributed databases: FastTrack (Kazaa), DirectConnect (Overnet), and later Gnutella2 (BearShare).
Unfortunately, none of these networks gained widespread adoption due to scalability issues where spam attacks took place. To combat these problems the BitTorrent network was introduced in 2001. It was designed with a file distribution system that utilized data hashing and other techniques to avoid unnecessarily transferring or storing duplicate files on peers that were part of the network. This allowed users to directly share each other’s content without requiring hosting from a centralized server, which significantly increased download speeds and reliability since there was no single point of failure.
“Rather than providing a search facility like Napster (which centrally indexes what files are available), BitTorrent moves this responsibility out to all participants.” – From “BitTorrent And The Evolution Of Content Delivery Networks” (Tomayto Tomahto)
In 2008, a paper titled “Bitcoin: A Peer-To-Peer Electronic Cash System” was published by an anonymous author under the pseudonym Satoshi Nakamoto. It introduced a consensus network that relied on data hashing to record transactions as well as keys and addresses to facilitate secure payments between users without the need for a centralized authority. Several years later, a team of developers led by Jeff Garzik created a fork of the Bitcoin blockchain that implemented a two-tier network consisting of “miners” and “nodes”. The former group was responsible for verifying transactions while the latter group handled data broadcasting and propagating messages across the network.
From this perspective, it’s clear that the blockchain’s distributed ledger is simply a way of managing trust between users.
“The goal of a distributed ledger system is to enable parties who don’t fully trust each other to transfer valuable assets across the Internet without requiring a central intermediary.” – From “What Is The Blockchain?” (Hackernoon)
How It Works
Much like the Internet, which consists of several layers that include both hardware and software components, distributed ledger networks are made up of two distinct types of nodes: 1) end-users, and 2) miners takes the benefits of crypto currency wallets.
End users (also called full nodes in some cases) can be anyone who acquires digital coins while running a wallet program on their computer or mobile device (also known as “clients”). Although wallets make it possible to interact with the network, they do not contain or process any of the information related to transactions.
On the other hand, miners are responsible for processing, verifying, and adding transactions into blocks which are then propagated across the network before being added to the blockchain ledger. These nodes are also responsible for generating new coins which are paid out to users who lend their computing power to the network.
Depending on the type of consensus protocol used, miners may either use software clients or specialized hardware to perform calculations and package transactions into blocks before broadcasting them to be verified by other nodes.
The Evolution Of Content Delivery Networks
The input discusses the development of content delivery networks. These networks allow users to share files with each other without relying on a centralized server. These increases download speeds and reliability, as there is no single point of failure. The first such network was BitTorrent, which was introduced in 2001. It utilized data hashing and other techniques to avoid unnecessarily transferring or storing duplicate files on peers that were part of the network. This allowed users to directly share each other’s content without requiring hosting from a centralized server.
The next major step occurred in 2008 when a paper was published that provided the basis for blockchain technology. The paper described bitcoin as “a peer-to-peer electronic cash system.” This introduced user consensus networks that relied on data hashing to record transactions and keys and addresses to facilitate secure payments between users without the need for a centralized authority.