ARCH consensus
Archethic Blockchain is using a new consensus called ARCH
(Atomic Rotating Commitment Heuristic) for an uncompromising consensus to support high scalability and high throughput.
Archethic Blockchain is based on three properties:
- Security: Each transaction is validated atomically
- Data consistency: Algorithms ensure to access the latest write and maximum availability
- Fault tolerance: Allow nodes to operate independently even in case of disaster
ARCH consensus is defined by three concepts:
Atomic Commitment
: The most absolute form a consensus which implies 100% of concordant responses for the acceptance or refusal of the transaction validationHeuristic
: Set of algorithms which manages the entire network, allowing to elect in a decentralized and coordinated way the nodes in charge to validate or store the transaction chainsRotating
: Node election is constantly changing. No nodes can predict which nodes will validate the transaction before its arrives.
Atomic Commitment
Archethic Blockchain is based on Hypergeometric distribution
laws which from an unpredictable election and formal consensus make it possible to obtain with certainty (99.99999999%) the same answer by querying 197 nodes as would be obtained by querying 100 000 nodes.
Therefore, it makes possible the consensus establishment with a small part of nodes and can resist to attacks of 90% of malicious nodes.
The risk of related availability is ensured by a strict management of the disruptive nodes, which are banished after investigation of the origin of the disagreement.
By supporting more 90% of malicious nodes into its network, ARCH
consensus is above aeronautical or nuclear standard, thanks to the Atomic Commitment
which request the total agreement of the validation nodes and from a Malicious Detection
algorithm to detect the malicious nodes.
Rotating Election
Each rotating election is unpredictable, but still verifiable and reproducible. The rotating algorithm sort a list of nodes based on:
Hash of transaction
: Unpredictable until the transaction arrivesDaily nonce
: Secret shared between the authorized nodes and renewed dailyNode public key
: Last node public key
The rotating election produces a proof, named: Proof of Election
which can be verified by any other nodes to ensure the right election of nodes.
From this algorithm, we get a list of nodes which can be filtered according to the constraints of the validation of the transaction.
- P2P availability
- Geographical distribution
Workflow
When a transaction is willing to be validated, its follows the given workflow:
- The transaction is received by any node (aka
Welcome node
) - The
Welcome Node
determines the validation nodes from theRotating Election
algorithm and forward the transaction - The validation nodes after receiving the transaction start some preliminary job to gather the context of the transaction:
- Previous transaction
- List of unspent outputs
- After the context building, the
Cross Validation Nodes
communicate to theCoordinator Node
the list of storage nodes involved to gather this information. - The
Coordinator Node
can build theValidation Stamp
and compute the replication tree. Then it transmits them to theCross Validation Nodes
. - The
Cross Validation Nodes
verify the content of theValidation Stamp
, sign with or without inconsistencies, and send theCross Validation Stamp
to all the validation nodes involved. - Once all the
Cross Validation Stamps
are received and if theAtomic Commitment
is reached, the replication phase starts. - Validation nodes send the transaction to the respective storage nodes:
- Storage nodes responsible for the new transaction chain
- Storage nodes responsible for the outputs of the transactions (transaction's movements addresses, recipients)
- Storage nodes responsible for the Beacon Chain
- The storage for the new transaction chain will notify the validation nodes and the
Welcome Node
about the replication, and theWelcome Node
will notify the client about it.