A Beginner’s Guide to Blockchain

Farhad Siraj
5 min readFeb 19, 2021
Photo by launchpresso on Unsplash

If you’re reading this article then chances are that sometime in the last 10 years you’ve heard the term blockchain. If you’re like me perhaps you first heard about it when Bitcoin first started making waves in the mid 2010s. Or maybe in the last few years, you’ve been hearing about how the blockchain could disrupt industries like banking, ride-sharing, and well pretty much everything. Regardless of how you were first introduced to the idea of blockchains, by now, you might have realized that it’s probably a big deal. So what exactly is the blockchain?

Where It All Began

The concept of the blockchain was actually ancillary to another revolutionary idea, Bitcoin.

In 2008 a white paper titled “Bitcoin: A Peer-to-Peer Electronic Cash System” was authored under the name of Satoshi Nakamoto. The paper described an innovative new way to send money from sender to receiver without involving a financial institution like a bank or stockbroker. Nakamoto designed a peer-to-peer network that chains blocks of transactions together using hashes and a proof-of-work system. This network is designed so that a single transaction can’t be manipulated without manipulating every other transaction that follows.

Even though it wasn’t called it at the time, the Bitcoin peer-to-peer network became the first instance of a blockchain. While in the case of Bitcoin the blockchain was designed mainly to be an electronic ledger for recording transactions, researchers realized that the technology had the potential to be used in a variety of different ways.

Built Different

So what exactly is a blockchain? In the simplest terms, a blockchain is just a type of database. A database is a collection of information that is stored on a computer system. Databases are designed to hold large amounts of data that can be accessed, filtered, or manipulated by many users at the same time.

In a traditional centralized database, data is stored using a table data structure (think rows and columns) on a centralized server made up of many computers. The database is controlled by an administrator who manages access to the database and has the ability to create, delete, modify, and change any record which is stored in the database. A small database managed by a single user or small company could be stored in a single server, but companies that store massive amounts of data like Google or Amazon, require millions of servers to run their operations.

Now that we know how a traditional database works, let’s talk about what makes a blockchain different. First, instead of storing data in tables, data is stored in collections of data called blocks. Each block has a predetermined capacity and once filled it is chained to the previous block, forming what we refer to as the “blockchain”.

The second difference between a traditional database and a blockchain is where it is stored. Just like a traditional database, the blockchain is also stored on multiple computers called nodes. The difference is that all the nodes aren’t housed in one central location, or owned and operated by a single entity. Instead, the blockchain operates as a peer-to-peer network where each node is an individual computer operated by separate individuals.

The third difference is that, unlike a centralized database where the data is stored in one location, each node on the blockchain has a copy of all the data on the blockchain. This makes the blockchain a distributed or decentralized database. This also means that if any one node has a discrepancy it can compare itself to all the other nodes to correct itself, making the blockchain very resilient to manipulation.

Centralized Database vs Distributed Database — Source

Building Blocks

The process in which a block is created is called mining. This process is two-fold, first miners gather data and verify the data is legitimate. Second, the miners must generate a 64-digit number, called a “hash,” that is less than or equal to the target hash. A hash is created by converting an input string into a unique 64-digit output string by using a complex mathematical formula. What makes a hash special is that it always returns the same output for the same input. However, if you change even a single character in the input, the output will be a completely different hash.

The input for the block hash includes all the transactions, the timestamp, the hash of the previous blocks, and other additional information depending on the blockchain. In order for a block to be added to the chain, its hash must be less than the target hash. But if the same input always returns the same hashed output how can a miner generate a hash that is less than the target hash? This is where the nonce comes in. The nonce is a random string of numbers that the miner keeps changing to generate different hashes. The goal is to generate a hash that is less than the target hash. This process is called proof of work and the blockchain can adjust the “difficulty” of generating a valid hash to control the rate blocks are created.

The process of generating a valid hash requires a lot of computational power and time. This means that the more powerful your machine is, the more calculations you can do per second, and the faster you’ll be able to compute the correct hash. This is important because all of the members of the network compete to be the first to compute a valid hash. The miner that is able to calculate a valid hash first is given a reward, and their block is added to the blockchain.

Photo by Scott Webb on Unsplash

Conclusion

Alright, that’s it for part 1! So far we’ve learned about the origins of the blockchain, what makes it different from a traditional database, and how blocks are created. In part 2 we’ll go into more detail on how exactly blocks are chained together, discuss what steps a blockchain takes to maintain its security, and how the blockchain can be used to make applications.

--

--