The Business & Technology Network
Helping Business Interpret and Use Technology
«  
  »
S M T W T F S
 
1
 
2
 
3
 
4
 
5
 
6
 
7
 
8
 
9
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
28
 
29
 
30
 
 
 
 
 

BLOCKCHAINS — A FullStack Web2 Developer Reveal

DATE POSTED:October 17, 2023

“Everyone owns the blockchain, yet no one owns the blockchain.” — Mayowa

Photo by Shubham Dhage on Unsplash

I begin this article with this quote from myself, because I believe it aligns with my understanding of what the blockchain is.

Hello, and welcome to the second episode of my transition from web2 to web3 series. I am a web2 expert, and I began my transition to web3 on August 2, 2023. I have an article on that here: My Transition from Web2 to Web3

Okay, let’s talk about Blockchains.

Blockchains

A blockchain is a collection of blocks, arranged in chronological order. Each block is a collection of transactions, and each transaction manipulate and determine the current state of the blockchain. Logically, a blockchain is a chain of blocks.

But, What is special about a chain of blocks?

To answer this question, let’s talk about what makes up the chain of blocks, i.e., the components of a blockchain.

Components of a blockchain

These are features that a blockchain must possess to qualify to be called a blockchain. Simply put, for you to accept a technology as a blockchain, it must meet all these requirements.

  1. Peer-to-Peer Network:

To understand what this means, let me break this component down into its bits.

  • Peer-to-peer simply means from one person to another person to another person and so on without an intermediary.
  • Peer-to-peer network is direct communication between different parties without the involvement of a centralized party (- the communication between the different parties is what makes it a network). The connection in a peer-to-peer network happens from one party to another party without interference. Therefore, peer-to-peer networks allow for distributed communication. Now for a formal definition;

Peer-to-peer network is a decentralized network architecture where the participants of the network (called peers) communicate directly with each other without the need of a central party or a central server.

Benefits of Peer-to-peer network:

  • allows direct communication between peers
  • each participant of the network can serve as both the client and the server. Meaning that no other participant can interfere in the business of another participant on the network except given the privilege to. You control the right to give or hold. It’s your choice.

I hope this clarifies what a peer-to-peer network is.

2. Messages (or Transactions)

Messages are a key component in blockchain. You’ll most probably know them by their specific name — transactions (I wrote about transactions here). Messages as transactions in a blockchain are what change the state of the blockchain. As I defined in my introductory article, transactions are what causes the blockchain to be updated based on the operations carried out per transaction on the blockchain.

Basically, messages (or transactions) are like the messages you send to a group chat on whatsapp, they change the state of the whatsapp group whenever a new message is sent to that group or deleted from that group.

3. Consensus rules

Consensus means agreement, A consensus rule means the rule that allows for agreement. These are rules that govern what constitutes a transaction and what makes for a valid state transition on the blockchain. These rules are usually mathematical models translated into human readable language. They are mostly inspired by vetted research papers, theories, and thesis.

4. State Machine

Transactions cause a change on the blockchain, but something has to handle those transactions. That’s where the state machine come in.

The state machine is the machine that is responsible for processing and handling transactions on the blockchain. This is the machine responsible for ensuring that the blockchain maintains a singleton state across all its nodes in accordance with its consensus rules. It is only when all the nodes of the blockchain network achieve singleton that the blockchain becomes valid. On the Ethereum blockchain, for example, the state machine is referred to as EVM — Ethereum Virtual Machine.

5. Blocks

Blocks in blockchain are collections of transactions where each transaction is ordered. A collection of blocks make up a blockchain. I’ll describe what Blocks are in bullet points:

  • A block is similar to what an accounting ledger is.
  • A block is what is added to the blockchain to make it a block-chain.
  • Blocks on a blockchain are arranged in a chronological and in a hierarchical order.
  • Each new block added on a blockchain keeps a record of the previous blocks that have been created before it.
  • The record of all previous blocks is cryptographically stored within the newly added block.

6. Consensus algorithm

The algorithm that should be implemented to enforce the consensus rules that is defined for the blockchain. This algorithm is what each decentralized node of the blockchain must implement before it qualifies to be a part of and to participate in the agreement (or consensus) process when a block is validated or mined. Examples of this algorithm are the:

  • proof of work,
  • proof of stake,
  • proof of authority,
  • proof of burn,
  • proof of activity,
  • proof of capacity,
  • proof of time,
  • proof of humanity, and more.

I’ll write a dedicated article on proofs later in this series in the coming weeks.

7. Incentive scheme

This is where incentives come in. One thing everyone agrees about web3 is that there is an incentive for everyone as long as you use the blockchain. The incentive scheme is how nodes get rewards. The incentive is the reward the nodes (or servers) that process a block get for participating in that consensus process of adding a block to the blockchain. This goes hand-in-hand with the consensus algorithms.

8. Clients

In point 7 above, I mentioned nodes (or servers). Now it’s time for the clients (remember peer-to-peer networks above — you are the server and you are the client). So what are clients? Clients are the application, I prefer to call them software that allow you to run and communicate with other nodes on the blockchain network. These clients can have the same implementation in different programming languages. Ethereum, as an example, has these client implementations:

  • Parity (written in Rust)
  • Geth (written in golang)
  • cpp-ethereum (written in c++)
  • Pyethereum (written in python)
  • Mantis (written in scala)
  • Harmony (written in Java)

9. Contracts (or Smart Contracts)

This is the most recent addition to the components of blockchains. This is where Ethereum shines. Ethereum was not the first blockchain to execute contracts, but Ethereum was the first blockchain to execute a Turing complete smart contract on a blockchain. Smart contracts are similar to what a real-life traditional paper contract is. It is a tender that defines the life cycle of an event and defines the outcomes of either rewards or penalties from the actions of that event.

Smart contracts mean the same but smarter than a paper contract. How? Smart contracts define the life cycle of a transaction or transactions, but the rewards and penalty from interacting with that contract are automatically handled without the need of an intermediary to reward or penalize you.

For a more technical definition:

Smart contracts are computer programs that execute a programmed transaction on the blockchain.

Any blockchain that has all these components can be regarded as a blockchain. It has met the criteria. The standard set by the blockchains that preceded it.

Types of Blockchain

What makes a blockchain has been established, Let’s talk about the types of blockchain.

There are 3 types of blockchains; the public, the private, and the consortium blockchains.

  1. Public blockchain

These are the most common of the blockchains. Public blockchain is open to everyone and needs no special permission to access. It is a blockchain that everyone with access to the internet can write to and read from. The transaction receipt of every transaction is readily and publicly available to everyone on the blockchain. A platform like https://etherscan.io helps to visually access the transaction receipt of the transactions and blocks deployed to a public blockchain.

2. Private Blockchain

This blockchain is the opposite of the public blockchain. These types of blockchains are closed-source. That is, they are created to be accessible by a group or firm, with a constrained set of rules. This type of blockchain is mostly used within organizations, purposeful groups, or firms. There is a greater level of restriction in private blockchains. The selected group controls the network size and controls who can participate in validating or mining blocks. Private blockchains tend to be faster than public transactions because the number of nodes that validate transactions are relatively less (leading to a smaller network size) than in public blockchains.

3. Consortium Blockchain

This is a hybrid of both the public and private blockchain. Consortium blockchain consensus mechanism is controlled by a pre-selected set of nodes of the same group and/or of multiple groups or organizations. I know what you must be thinking, I don’t see any difference between private and consortium blockchains. There are many differences, actually. A key point to have about private and consortium blockchain is that:

Consortium blockchains are controlled by a set of individuals, and those individuals have control over who participates in validating or mining blocks.Consortium blockchain can be a private blockchain, but a private blockchain can not be a consortium blockchain.

Consortium blockchains exist at the centre of the combination of private and public blockchains . Consortium blockchain are more decentralized than private blockchains and less decentralized than public blockchains.

I know how blurry the difference between Consortium and Private Blockchains can be, so I have written a dedicated article to discuss the difference between private and consortium Blockchains. You will find that article below this article.

Back to the Top

Back to the question I asked at the beginning of this article. What is special about blockchains? The answer is Decentralization. From the components of Blockchains to the Types of blockchains discussed above, one thing that is common to them is decentralization. Even the consensus rule is to ensure decentralization.

Decentralization, What is it?

Decentralization is all about delegating responsibility, not having a central body bearing rule. That is why the blockchain shines.

So what is the Blockchain?

The blockchain is the technology that powers the decentralized nature of the web3 ecosystem, ensuring transparency, immutability, and security. A more official definition that you will see online is:

“A blockchain is a tamper-proof shared digital ledger that records transactions in a decentralized peer-to-peer network.”

The tamper-proof feature of the blockchain makes the blockchain a platform for building software that prioritize the security of the users of the software. Because no one can tamper with your data. It is yours and yours only. The decentralized nature of the blockchain also ensures scalability and availability — two important features every enterprise web2 software strives to achieve.

Conclusion