Discuss about the organization and categories of Hyperledger fabric architecture.

Hyperledger Fabric is a modular and permissioned blockchain framework developed by IBM and Digital Asset under the Hyperledger Project by the Linux Foundation.

It supports pluggable components and focuses on privacy, confidentiality, and scalability—tailored for enterprise use.


High-Level Organization of Hyperledger Fabric

Hyperledger Fabric is organized into 6 main categories of architecture:

Membership Services

Manages identity, authentication, and access control.

  • Based on PKI (Public Key Infrastructure)
  • Uses Certificate Authority (CA) for:
    • User identity verification
    • Enrollment certificates (E-Certs)
    • Transaction certificates (T-Certs)
  • Integrates with LDAP and other identity systems

Component: Membership Service Provider (MSP)


Blockchain Services

Core layer that powers the ledger and consensus.

a. Consensus Services

  • Orderers order transactions into blocks
  • Supports pluggable consensus:
    • SOLO (test)
    • Kafka
    • Raft (Crash Fault Tolerant)
    • PBFT (Byzantine Fault Tolerant)

b. Distributed Ledger

  • Stores:
    • Blockchain (immutable blocks)
    • World State (key-value store like LevelDB/CouchDB)

c. Peer-to-Peer Protocol

  • Uses gRPC for communication
  • Handles discovery, transaction, synchronization, and consensus messages

Smart Contract Layer (Chaincode Services)

Business logic implementation.

  • Chaincode is Fabric’s smart contract
  • Runs inside secure Docker containers
  • Supports:
    • Go, Node.js, Java
    • Other languages via external launcher (Fabric 2.0)
  • Components:
    • Secure containers
    • Secure registry
    • Events & listeners (like Solidity events)

APIs and CLIs

Allows interaction with the Fabric network.

  • REST APIs and SDKs for apps
  • Command Line Interface (CLI) for:
    • Chaincode install/invoke/query
    • Ledger query
    • Transaction submission

Core Components (Network Elements)

🔹 Peers

  • Maintain the ledger and execute chaincode.
  • Types:
    • Endorsing Peers: Simulate and endorse transactions
    • Committing Peers: Validate and update ledger
    • Orderers: Create ordered blocks from transactions

🔹 Clients

  • Initiate transaction proposals
  • Communicate with peers via SDKs

🔹 Channels

  • Enable private communication between specific participants.
  • Think of channels as private blockchains over a shared infrastructure.

🔹 World State Database

  • LevelDB or CouchDB (rich queries)
  • Stores the latest state of key-value pairs

Application Model (MVC-B Pattern)

Application built on Fabric follows the MVC-B (Model-View-Controller-Blockchain) pattern:

ComponentDescription
ViewUser interface (Web, Mobile)
ControllerConnects UI and backend
ModelOff-chain data and structures
BlockchainOn-chain smart contract logic and ledger access

A high-level overview of a Hyperledger Fabric network

Leave a Reply

Your email address will not be published. Required fields are marked *