Hyperledger Fabric is a platform for building distributed ledger solutions, with a modular architecture that delivers high degrees of confidentiality, flexibility, resiliency, and scalability. This enables solutions developed with Fabric to be adapted for any industry. Fabric allows components, such as consensus and membership services, to be plug-and play. It leverages container technology to host smart contracts called “chaincode” that contain the business rules of the system. And it’s designed to support various pluggable components, and to accommodate the complexity that exists across the entire economy. Starting from the premise that there are no “one-size-fits-all’’ solutions, Fabric is an extensible blockchain platform for running distributed applications. It supports various consensus protocols, so it can be tailored to different use cases and trust models. Fabric runs distributed applications written in general-purpose programming languages without depending on any native cryptocurrency. This stands in sharp contrast to most other blockchain platforms for running smart contracts, which either require code to be written in a domain-specific language or else rely on a cryptocurrency. Furthermore, Fabric uses a portable notion of membership for the permissioned model, which can be integrated with industry-standard identity management. To support such flexibility, Fabric takes a novel architectural approach and revamps the way blockchains cope with non-determinism, resource exhaustion, and performance attacks.
Practical Byzantine Fault Tolerance