Polkadot architecture

The basics

As we stated in our introductory article to Polkadot, the big idea here is to create a platform that will allow for interoperability between various blockchains. Polkadot prefers a lot of specialized chains communicating with each other instead of one chain trying to solve every problem imaginable. To achieve this goal, Polkadot uses a Nominated Proof of Stake as its consensus algorithm. There are two main roles in the network — nominators and validators. Validators are nodes elected every couple of hours and their main goal is to produce blocks and participate in consensus. However, these validators have to be backed by a staked DOT tokens and that’s where nominators come into play. Nominators are voting for validators (by bonding their DOT tokens) and there are receiving regular rewards in the form of DOTs.

Main actors

Collators — those are responsible for collecting the transactions inside the parachains and producing state transition proofs to be validated by the validators

Components

Relay chain — validators are running on the relay chain to provide security for the parachains and to validate to transactions produced by them

Finality

In order to understand the consensus mechanism, we have to take a look at finality first. Finality is a property that describes a moment in which the transaction becomes irreversible after it has been added to the blockchain. There are actually two kinds of finality and each of them deeply influences the creation of the blocks and how much we can trust that these blocks will remain part of the network.

The consensus

Polkadot uses a novel method which is called the hybrid consensus — that means there are actually two algorithms that are used in the network. First of them is BABE (it serves as a block production mechanism) and the second in GRANDPA which adds finality. The main reason to have two algorithms is that we can have fast block production (unlike most of the networks) and finalization which finalizes multiple blocks at once (which is, again, a great performance optimization).

BABE (Blind Assignment for Blockchain Extension)

BABE is the block production mechanism that runs between the validator nodes and determines the authors of the new blocks. The active set of validators is chosen once per era (which is one day at the moment), those validators are then able to validate blocks from the parachain collators (nodes which are producing blocks for parachains). Validators are chosen according to the amount of their stake — there is no minimum, however, the more stake a validator has, the bigger change is that it gets elected for the era.

GRANDPA (GHOST-based Recursive ANcestor Deriving Prefix Agreement)

GRANDPA is the second consensus algorithm that adds finality to the network (making all the blocks final right after they are produced). It’s a pBFT based algorithm that presumes that ⅔ of validators are honest and the only ⅓ can be malfunctioning or having malicious intents in the network.

Conclusion

This hybrid consensus model allowed Polkadot to build a really fast, interoperable network with provable finality which can hosts potentially thousands of different parachains while providing enough security and decentralization. In the next article of this series, we will look at the core feature of Polkadot and that are the parachains themselves.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Polkadotters | Kusama & Polkadot validators

Polkadotters | Kusama & Polkadot validators

1.5K Followers

Czech bloggers & community builders. We are validators of Polkadot, Kusama, Darwinia, Crab, Bifrost, HydraDX, StaFi, Centrifuge under the name: POLKADOTTERS