About MultiChain
Deprecation notice
Consortium networks have been deprecated. This guide is for historical reference.
MultiChain is a fork of Bitcoin Core.
MultiChain is a permissioned consortium blockchain protocol.
Consensus
MultiChain achieves consensus by validating blocks in a round-robin scheme with a mining-diversity
parameter.
All nodes with the addresses with the mine
permission take a turn in validating blocks in the network.
The way the mine
nodes take turns in validating blocks is determined by the network's mining-diversity
parameter.
The mining-diversity
parameter can be set to any value between 0
and 1
:
1
— everymine
node in the network must take a turn in block validation per round. This is the strictest setting.0
— not everymine
node must take a turn in block validation per round; anymine
node can take turns in block validation in a random fashion. This is the loosest setting.
The round-robin scheme is the following:
- Determine the number of nodes with the
mine
permission in the network. - Multiply the number of
mine
nodes by themining-diversity
value to get the value spacing. - Check if the
mine
node validating the current block validated a spacing-1 block. If themine
node validated a spacing-1 block, render the block invalid.
The default mining-diversity
parameter is 0.3
and cannot be changed once the chain is initialized.
Round-robin example with 10 mine
nodes with mining-diversity
set to 0.3
:
- 10 nodes permitted to validate blocks.
- 10×0.3=3. spacing is 3. spacing-1 is 2.
- Each
mine
node in the network can validate every third block and cannot validate two blocks in a row.
Service nodes
A MultiChain network is deployed with the following service node:
- Explorer — a node running MultiChain explorer
Updated 16 days ago