Polkadot is a technology designed to increase the interoperability of different blockchains, such as Bitcoin and Ethereum, and combine them into a single multiblockchain.
Who created Polkadot and when?
Polkadot was created by Dr. Gavin Wood, an iconic figure in the early history of Ethereum – he was the co-founder, first CTO and chief developer of Ethereum. Wood developed the code for the first implementation of the platform, wrote its formal specification, and created the Solidity programming language.
On January 11, 2016, Wood left Ethereum to pursue a project capable of meeting the expectations Wood felt Ethereum had failed to meet.
According to Wood, he got the idea for Polkadot in the summer of 2016, when he was waiting for technical documentation on sharding in Ethereum 2.0 to start implementing it. In collaboration with developer Marek Kotewicz [Marek Kotewicz], Wood began work on creating a “sharded” version of Ethereum as simple as possible, and by October 2016 had prepared the first draft version of the Polkadot white paper.
While still working on the Ethereum team, Wood and several colleagues founded EthCore, a commercial blockchain technology company. EthCore later changed its name to Parity Technologies. The company’s employees created the Parity Ethereum Client, the Substrate framework, the Polkadot network, and the Parity multisignature wallet.
In the summer of 2017, Wood and developer Peter Czaban founded the Web3 Foundation, a nonprofit organization dedicated to promoting the development of decentralized Internet software protocols.
One of the Web3 Foundation’s first tasks was to control the funds raised during the Polkadot ICO, which took place from Oct. 15 to Oct. 27, 2017. The project raised approximately $145 million by selling 5 million native DOT tokens.
What problems does Polkadot’s technology solve?
Polkadot is designed to solve the key problems preventing blockchain technology from becoming a full-scale practical application, namely:
Scalability: so-called first-generation blockchains cannot process a huge number of transactions in the supposed decentralized world of the future. For now, network nodes process transactions in a one-to-one format. This factor holds back further growth of the network.
Isolation: Blockchains remain discrete and independent, lacking two-way communication and interoperability.
How is Polkadot structured?
Polkadot is structured with the following components:
1. Relay Chain (linking or relaying chain) is the main Polkadot chain that connects all the individual blockchains (parachains) in the network.
2. a Parachain is an individual parallel blockchain that performs transactions and transfers them to the source blockchain. Parachemes build so-called collators: they collect user transactions and validate blocks based on the Proof-of-Validity algorithm. Collators receive a reward for their work, the amount of which depends on the particular parachain. Collators’ activity is similar to that of miners in blockchains with Proof-of-Work and Proof-of-Stake algorithms.
3. Bridge Chain – designed to connect blockchains that do not use Polkadot control protocols (e.g., bitcoin, Ethereum and Tezos blockchains).
The Relay Chain mechanism controls consensus enforcement, is responsible for message delivery between participating chains, and facilitates transaction finalization. Relay Chain is a blockchain with a pool of validators that are randomly assigned the task of adding and validating blocks in various parachemes. For each transaction, validators must make a deposit. If the transaction meets the consensus rules, the deposit is returned and the validator is rewarded. If the rules are broken, the deposit is lost.
Consensus in the repeater chain is achieved through two mechanisms based on the principle of personal responsibility. One is responsible for block production, the other for finalization. Separating block production and finalization solves the scalability limitations in protocols with instant finalization (e.g., Tendermint) by enabling fast block production and allowing more validators to participate in consensus building.
The names of these two mechanisms are acronyms: BABE (Blind Assignment for Blockchain Extension) is responsible for producing new blocks, while GRANDPA (GHOST-based Recursive Ancestor Deriving Prefix Agreement) is responsible for finalizing old blocks.
BABE is an algorithm for creating rechain blocks consisting of the headers of all valid and available parachain blocks produced by collators. The BABE algorithm works on the basis of slots (time slots): the right to produce a block in a re-translator chain at a certain time slot is randomly granted to a validator, known as a slot leader.
The right to produce the next block is granted through computation using a verifiable random function. The BABE model resembles Ouroboros Praos, the block production component of the Cardano consensus protocol.
GRANDPA is a finality mechanism in which each validator votes for the highest block it considers valid (actually voting for all block ancestors).
All blocks that more than two-thirds of the validators vote for with their steaks are finalized. Since multiple blocks can be finalized instantly, it can take longer for validators to reach consensus on finalization than it takes to create a single block. This allows GRANDPA to support a larger set of validators than traditional BFT algorithms, which must finalize each block separately.
Validators are found and approved by so-called nominators [nominators]. They pay a deposit for the validators, which is confiscated from them if the behavior of their chosen validators does not comply with the consensus rules. The option to pay nominators distinguishes the Nominated Proof-of-Stake (NPoS) algorithm on which Polkadot operates from traditional Delegated Proof-of-Stake (DPoS) algorithms.
Nominators are not involved in the process of making and validating transactions. Validator violations are monitored by watchdog nodes, so-called fishermen: they identify (“fish”) cases of bad behavior, create evidence containing data about conflicting validator votes, and receive a share of the violators’ confiscated bets.
Such a scheme allows GRANDPA to provide asynchronous supervised security: the finalization of any two conflicting blocks will cause responsible validators to lose their deposits (at least two-thirds of the total deposit). As long as the block production mechanism meets certain criteria, the finalized chain grows.
GRANDPA’s finalization mechanism is used for all parachains in Polkadot. In exchange for the finalization mechanism, each parachain receives the option of interoperability with other parachains. This tradeoff allows Polkadot to provide a simple communication mechanism that gives parachain collators the ability to communicate directly through incoming and outgoing message queues.
Although parachains use the same finalization mechanism, each can implement different block production mechanisms, with different features and parameters, optimized for a particular class of applications.
Parachain Development Kits/PDKs are tools that greatly simplify the development of specialized parachains. One such PDK is the Substrate framework, which comes with the Framework for Runtime Aggregation of Modularized Entities (FRAME).
Substrate includes built-in implementations of block production algorithms: BABE, Aura, and others. Another PDK, Cumulus, contains the linking code needed to link a Substrate-based chain to the Polkadot network. Together, Substrate and Cumulus facilitate the creation and linking of parachains to the Polkadot network.
Depending on the blockchain production algorithm and parameters, the transactional throughput of each network can vary, so the total transactional throughput of the Polkadot network can only be estimated approximately.
The first version of Polkadot involves 100 parachains. Assuming that each parachain can support at least 10 transactions per second, the lower limit of throughput is approximately 1,000 transactions per second.
Future versions of Polkadot will allow the parachain to function as a Layer 2 rechain with additional parachains attached to it to form a tree-like structure that theoretically provides limitless throughput.
At a certain stage, the main relay-chain becomes an element limiting system efficiency, but only in order to validate the input queue processing, as the parachains directly communicate with each other. According to some estimates, the tree structure device will allow Polkadot to scale up to 10,000x the capacity of a single PoS chain.
What functions does the DOT token perform?
A native DOT network token performs three main functions:
Management: token owners have full control over the protocol, with privileges that on other platforms are reserved for miners – determining the transaction fee structure, decisions to change the protocol, adding or removing parachains.
Transactions: DOT tokens enable the basic Polkadot consensus mechanism. Token holders must be active members of the network and perform token stacking, countering consensus rule violations.
Reward: Tokens are distributed to active members of the network.
How is the Polkadot project funded?
Although the project raised $145 million in its first token sale in 2017, there wasn’t enough money to develop it. In June 2019, the Web3 Foundation held an additional 500,000 DOT sale. The project’s projected capitalization thereafter rose to $1.2 billion.
In late July 2020, the Web3 Foundation held another private token sale, raising $43.6 million.
How is the Polkadot project evolving?
In November 2018, the blockchain startup platform Substrate, a tool designed to accelerate Polkadot’s development and give corporate users the ability to quickly launch distributed registries, was released.
In August 2019, the Polkadot development team launched an experimental version of the blockchain interaction protocol called Kusama. It was positioned as a testing ground “that would allow teams and individual developers to build and deploy parachains and test Polkadot’s management and distribution functionality in a real-world environment.”
The Kusama network ran on the Proof-of-Authority (PoA) consensus mechanism, with Web3 foundation responsible for the validator node functions. The functionality of the network remained limited.
At the end of February 2020, the Chainlink project completed its initial integration with the blockchain based on the Substrate platform. Polkadot developers called it a milestone in the implementation of Chainlink’s decentralized oracle network into the protocol ecosystem.
Oracles are necessary for the execution of smart contracts and the operation of dapps that use data from outside their own blockchain. Providing reliable third-party data feeds provides an opportunity to achieve interoperability between different networks and expand the scope of smart contracts and dapps.
According to the developers, Polkadot ecosystem blockchains will be the first outside of the Ethereum system to use Chainlink oracles. Until Polkadot’s core network is fully operational, Chainlink’s information channels will serve the experimental Kusama protocol. For now, the parachain between Kusama and Chainlink is still under development.
On March 5, 2020, the Web3 Foundation awarded a grant to develop a “bridge” between bitcoin and Polkadot blockchains. The project is being handled by Interlay. The XCLAIM framework at the heart of the bridge BTC parachain will allow bitcoin-backed PolkaBTC tokens to be issued. These tokens will be transferable to other parachains. After burning PolkaBTC in a BTC parachay, users will be able to receive bitcoins at a 1:1 ratio or the equivalent amount in DOT tokens. The source code for the BTC parachain is posted on Github, and its specifications are also available.
On May 26, 2020, the Web3 Foundation, after more than three years of development, launched the first phase of the Polkadot blockchain core network, after which the network operated using the Proof-of-Authority (Proof-of-Authority) mechanism.
Web3 Foundation ensured the operation of nodes and block validation, and could intervene in the functioning of the blockchain in case of a critical situation. These measures were required to reduce the possible negative impact of bugs and security breaches. DOT token holders were given access to their accounts and the ability to request the deployment of a node or to propose a validator.
DOT token transfers remained unavailable. From a technical point of view, the launched first phase of the core network is more like a test phase.
On June 18, 2020, the Polkadot blockchain transitioned to the Nominated Proof-of-Stake (NPoS) phase following audits and finalization of final aspects. In addition, Interlay unveiled a “bridge” between bitcoin and Polkadot blockchains, so far in the Proof-of-Concept state.
In early July 2020, the developers of Polkadot, Cosmos and Terra promised to introduce the Anchor DeFi-protocol by the end of the third quarter of 2020, which will allow investors to earn interest income on deposits in Terra stabelcoins.
On July 20, 2020, the Web3 Foundation resigned as administrator of the Polkadot network, following a vote by community members. By that point, the number of validators had reached 197. This allowed the validation process to move to a decentralized model with community participation. The developers used the Proof-of-Stake algorithm, in which more than half of the issued DOT tokens are blocked.
The token-based governance system was tested to approve a proposal to limit Web3 Foundation’s authority. The resulting vote to remove the Sudo control module was called “poetic” by Polkadot founder and Parity Technologies director Gavin Wood.
After the vote, the Polkadot network lost the “CC1” or “Candidate Circuit 1” designation. This marked the transition to the main network and the beginning of the third and fourth phase of the launch.
On July 27, 2020, the project tallied the results of the second validator vote. The vote determined that one DOT token should contain 10 billion Planck – the smallest share units. One old DOT is equivalent to 100 new ones. Web3 Foundation and Parity Technologies did not participate in the vote.
On August 4, 2020, Polkadot developers launched the Rococo test network to implement parachain sharding. Rococo is designed to test the Polkadot protocols that will enable communication between shards. Three separate parachains are available in Rococo: “tick”, “trick” and “track”, with developers being able to add their own parallel chains.
The test network supports horizontal messaging and uses the Proof-of-Authority (Proof-of-Authority) consensus mechanism. The developers warned that the system is still unstable, and promised to add new code to it in preparation for the full launch of the main network.