Architecture
Last updated
Last updated
The following diagram outlines the GoQuorum high-level architecture.
Metacces is a lightweight fork of geth. Metacces is updated as geth releases occur.
Metacces includes the following changes to geth:
Consensus is achieved with the QBFT consensus protocol instead of proof of work.
The P2P layer is changed to only allow connections between allowed nodes.
The block generation logic is changed to replace the global state root
check with a global public state root
check.
The block validation logic is changed to replace the global state root
in the block header with the global public state root
.
The State Patricia trie is split into two: a public state trie and a private state trie.
Block validation logic is changed to handle private transactions.
Transaction creation is changed to allow for replacing transaction data with encrypted hashes to preserve private data where required.
mBFT has immediate finality. When using QBFT there are no forks and all valid blocks get included in the main chain.
Although mBFT is less fault tolerant than other blockchain consensus protocols, it is more immune against 51% attacks.
Attackers need to take over 67% of validators to gain control of the network; unlike other less-immune (although more fault tolerant) consensus protocols.