Dock is built on Substrate and uses the consensus mechanism offered by Substrate which is a hybrid as it separates block production and finality and achieves them through different methods. The finality is achieved through a finality gadget called GRANDPA (GHOST-based Recursive ANcestor Deriving Prefix Agreement). It finalizes chains rather than individual blocks and offers provable finality. More details on GRANDPA are available on the Web3 Foundation's research page. It is implemented in Substrate in this pallet.
The Dock network started with a Proof of Authority (PoA) network and therefore the block production algorithm in this phase was Aura, which was transitioned to a Proof of Stake (PoS) consensus.
When Dock transitions into utilizing PoS, the block production algorithm changes from Aura to BABE (Blind Assignment for Blockchain Extension protocol) which selects a validator for each slot (interval of time) randomly using a VRF (Verifiable Random Function). BABE is similar to IOHK's Ouroboros Praos. More information about this is available on Web3 Foundation's research page. It is implemented in Substrate in this pallet.
For development purposes, we will bundle instant-seal consensus which produces a block as soon as the transaction reaches the node rather than wait for blocks to be produced at a fixed interval. This is helpful when running the SDK against a local node during development.
Two explorers are available to query the Dock blockchain and view usage metrics:
When the Dock network transitioned to PoS, a new blockchain was created from genesis and the previous PoA blockchain stopped supporting new transactions. The PoA blockchain is still accessible for historical purposes and hosted separately by Subscan: Dock PoA Mainnet.