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:
Component | Description |
---|---|
View | User interface (Web, Mobile) |
Controller | Connects UI and backend |
Model | Off-chain data and structures |
Blockchain | On-chain smart contract logic and ledger access |

A high-level overview of a Hyperledger Fabric network