Are blocks mined in HyperLedger Fabric?

Marc Cayuela Rafols picture Marc Cayuela Rafols · Apr 25, 2016 · Viewed 8.4k times · Source

I have been reading the documentation on how HyperLedger Fabric's project is implementing a open source BlockChain solution: https://github.com/hyperledger/fabric/blob/master/docs/protocol-spec.md

I have seen that PBFT consensus algorithm is used, but I do not understand how blocks are mined and shared among all Validating Peers in the BlockChain network.

Answer

Marc Cayuela Rafols picture Marc Cayuela Rafols · Apr 25, 2016

Hyperledger Validating Peers (VPs) do not mine blocks and do not share the blocks between them. Here is how it works:

  1. A transaction is send to one trusted VP.
  2. The VP broadcasts the transaction to all other VPs.
  3. All VPs reach consensus (using PBFT algorithm) on the order to follow to execute the transactions.
  4. All VPs execute the transactions "on their own" following the total order and build a block (calculating hashes mainly) with the executed transactions.

All the blocks will be the same because: the transaction execution is deterministic (should be) and the number of tx in a block is fixed.