I’m sure you’ve had your fair share of exposure to the term ‘blockchain’. Chances are you’ve read a handful of articles on it and still don’t know anything. So without further ado, let’s get you introduced to what blockchain is, how it works, and the significant concepts covered in it.
What is blockchain?
To begin with, a blockchain is a public list of records that are open, traceable and transparent. It stores all its information in batches called blocks. These blocks are linked together to form a continuous line.
A chain of blocks = a blockchain.
And each block is like a page of a record book.
But first, I saw this great illustration in a blog posted on medium about what blockchain isn’t. According to it, here’s what isn’t it:
Blockchain is NOT a cryptocurrencyMedium.com
Blockchain is NOT a programming language
Blockchain is NOT a cryptographic codification.
Blockchain is NOT an Artificial Intelligence or Machine Learning technology.
Blockchain is NOT a Python library or framework.
Let’s move on. But before I mention the word I’m about to,
The word ‘immutable’ means: unchanging over time or unable to be changed
Synonyms include: fixed – set – unchangeable – rigid – unshakeable – irremovable
So, again, what is a blockchain?
It is an immutable (fixed, unchangeable, unshakeable) record of transactions that do not require to rely on any external authority like banks, governments, large corporations to validate the authenticity and integrity of the data. Decentralization is at the core.
Like I mentioned earlier, blockchain is a public database of information. Hence there isn’t a central body or single entity control (say Mark Zuckerberg) managing and controlling the database, making money off of it, and all the while evil laughing.
Through blockchain, millions of users on the Internet help manage and maintain these records.
That’s decentralized and democratized for you, hah, take that Facebook!
⚡ Become a Certified Ethereum Developer – try out this study track
Significant blockchain concepts
The changes described above have the potential to create an open, trustless, and permission-less network. It is through these features that blockchain is able to build trust. Let’s dive deeper into what concepts are at the heart of blockchain.
1) Distributed ledger
A distributed ledger is a database that is maintained by a network of computers rather than a central authority. In a blockchain system, the distributed ledger is a record of all the transactions that have taken place on the network.
Cryptography is the practice of using mathematical algorithms to secure and verify data. In a blockchain system, cryptography is used to secure the ledger and ensure that it cannot be altered or tampered with. It is also used to verify the identity of parties involved in transactions and to ensure that only authorized parties can access certain parts of the ledger.
3) Consensus algorithm
A consensus algorithm is a set of rules that is used to reach agreement on the state of the distributed ledger among the computers in the network. In a blockchain system, the consensus algorithm is used to validate transactions and add them to the ledger.
In a blockchain system, mining refers to the process of verifying transactions and adding them to the ledger. Miners use specialized computers to solve complex mathematical problems and are rewarded with a small amount of cryptocurrency for their efforts.
A node is a computer that is connected to the blockchain network and participates in the process of verifying and recording transactions. Nodes can be organized into different types, such as full nodes, which store a copy of the entire blockchain, and light nodes, which store only a small portion of the blockchain.
6) Smart contracts
A smart contract is a self-executing contract with the terms of the agreement between buyer and seller being directly written into lines of code. Smart contracts can be used to automate and streamline complex business processes, reducing the need for manual intervention and increasing efficiency.
7) Private and public blockchains
A private blockchain is a blockchain that is permissioned, meaning that only certain parties are allowed to participate in the network and access the ledger. A public blockchain, on the other hand, is open to anyone and is not permissioned.
However, there are two more: Hybrid and Consortium. Read about them here in detail 👉 Types of blockchains
8) Public and private keys
In a blockchain system, each user is assigned a public and a private key. The public key is a unique identifier that is used to receive transactions, while the private key is used to sign and send transactions. The private key is kept secret and is used to prove the identity of the user.
Why is blockchain important?
These features, in turn, create some wonderful benefits for us all. Here are a few:
In a traditional system, a central authority or intermediary is responsible for verifying and recording transactions. In a blockchain system, the ledger is distributed across a network of computers, and transactions are verified by consensus of the network rather than a single authority. This decentralization makes it much more difficult for any one party to manipulate the ledger or make fraudulent transactions.
Once a transaction is recorded on the blockchain, it is extremely difficult to alter or delete. This is because each block in the chain contains a unique cryptographic hash, and any change to the contents of a block would change the hash. This makes the blockchain an extremely secure and reliable way to record transactions.
The blockchain is a public ledger, which means that anyone can view the transactions recorded on it. This transparency can help to build trust among parties and can also help to prevent fraud, as it becomes much more difficult to hide illicit activity.
Because the blockchain eliminates the need for a central authority or intermediary to verify transactions, it can often be faster and more efficient than traditional systems. It can also reduce the need for manual record-keeping, which can save time and reduce the risk of errors.
Overall, the decentralized, secure, and transparent nature of blockchain technology makes it an important innovation that has the potential to disrupt a wide range of industries, from finance and banking to supply chain management and more.
In a blockchain system, it is extremely difficult for a party to deny having made a transaction. This is because the transaction is recorded in the blockchain and can be independently verified by other parties in the network. This can help to reduce the risk of disputes and fraud.
How does blockchain work?
Simply, blockchain can be understood as a joined or linked list. The first block of this list is called the genesis block which is hardcoded into the blockchain. Each block in the list, except the genesis block, is dependent on the previous item. Because there is no block before the first block, it is different.
If you still don’t get it, observe these blocks: 🟪 🟥 🟥 🟥 🟥 🟥 🟥 🟥 🟥 🟥
Let’s say we have a chain that consists of 10 blocks. Here, the 10th block depends on the 9th block. The 9th block depends on the 8th block. It goes onwards. From this, we can understand that the last block i.e. the 10th block depends on all previous block, including the genesis block i.e. the 1st block (in purple).
Now if someone tries and changes the data present in the 6th block, they’ll have to change the data on the 7th, 8th, 9th and 10th blocks. That’s because the latter blocks are invalid after changing to the 6th block. Remember each block is dependent on the previous block? Yep. That’s what is happening here.
Changing block data is a pretty expensive operation and difficult to achieve. Hence these blocks are termed immutable. Even more, participants have to show proof in order to add and change blocks.
In order to add a block, a hash has to generate for the block. Hashing is a cryptographic process that can be used to validate the authenticity and integrity of various types of input. It is widely used in authentication systems to avoid storing plaintext passwords in databases but is also used to validate files, documents, and other types of data.
Let’s assume that we have three blocks with some transactions stored in them. To link these blocks, every block is assigned a unique hash ID that is generated using the data present in that block. So when someone tries to modify a block, the hash ID of that block changes as well.
Now, the hash ID of the first block is stored in the second block. And the hash ID of the second block is stored in the third block. This process is repeated for all the subsequent blocks. Thus, we have a chain of blocks referred to as the “blockchain”.
See, that was super easy, right?