Hyperledger Fabric is an open source blockchain distributed ledger initiated by the Linux Foundation.
Hyperledger Fabric is an open source blockchain implementation. The development environment is built on a VirtualBox virtual machine. The deployment environment can be built on your own network or directly deployed on BlueMix. The deployment method can be traditional or Dockerized. The consensus algorithm can be plug-in. It supports the use of Go and JavaScript develop smart contracts, especially featuring enterprise-level security mechanisms and membership mechanisms.
If you don’t know what these terms mean, just remember that Fabric is to blockchain what Hadoop is to big data.
Shared ledger
Hyperledger Fabric has a ledger subsystem consisting of two components: world state and transaction log. Every participant has a copy of the ledger of every Hyperledger Fabric network they belong to.
The world state component describes the state of the ledger at a given point in time. It is the database of ledgers. The Transaction Log component records all transactions that resulted in the current value in the world state; this is the history of updates to the world state. The ledger then includes the world state database and transaction log history.
The data storage of world state in the ledger is fungible. By default, this is the LevelDB key-value store database. Transaction logs do not need to be pluggable. It only records the values before and after the blockchain network uses the ledger database.
smart contract
Hyperledger Fabric smart contracts are written in chaincode and are called by an application outside the blockchain when that application needs to interact with the ledger. In most cases, chaincode only interacts with the ledger's database, world state (e.g., queries), and not with the transaction log.
Chaincode can be implemented in several programming languages. Currently supports Go and Node.