Polkadot
Polkadot is a network protocol that enables the transfer of arbitrary data, including tokens, across blockchains. This allows for the possibility of cross-chain registries and cross-chain computation. It is capable of transferring data between public, open, permissionless, and private, permissioned blockchains. This makes it possible to develop applications that can use permissioned data from a private blockchain on a public blockchain. [3][1]
Polkadot is designed to enable individuals to regain control of their digital information from third parties, allowing for a secure web where data is kept from central authorities and internet monopolies. It provides a foundation for layer-1 blockchains to develop, potentially leading to new business models, services, organizations, societies, and economies. Polkadot intends to further the potential of blockchain technology by providing a way for different blockchains to connect within a scalable ecosystem and facilitating secure cross-chain communication. [2][3]
History
The Polkadot whitepaper was published in 2016 by Dr. Gavin Wood, co-founder and former CTO of Ethereum and creator of Solidity. He founded Polkadot alongside Robert Habermeier, a Thiel fellow and member of the Rust community with a background in blockchain, distributed systems, and cryptography, and Peter Czaban[24], Technology director for Web3 Foundation with a Masters degree in Engineering from the University of Oxford and background in defense, finance, data analytics, machine learning, and business development. [3]
Polkadot co-founders (L-R) Robert Habermeier, Dr Gavin Wood and Peter Czaban
In 2017, Dr. Wood co-founded the Web3 Foundation for research and development of decentralized web technologies, including Polkadot. Parity Technologies, which has done the majority of development work on Polkadot's core technology as stated in the whitepaper, [10] was co-founded by Dr. Wood and former Ethereum head of security Jutta Steiner. [5]
In 2019, the first version of the Polkadot codebase, known as Kusama, was released as an unaudited canary network. Kusama serves as a testing platform for Polkadot's technology and has its own independent economic incentives. The Kusama network is independent and is directed by its own decentralized community. [5]
In May 2020, the Polkadot genesis block was launched as a proof-of-authority (PoA) network with a single Sudo (super-user) account controlling governance. Subsequently, validators joined the network and signaled their intent to participate in consensus. In June 2020, the network evolved to become a proof-of-stake (PoS) network. The Sudo module was removed in July 2020, transitioning the chain's governance to the token (DOT) holders and securing the chain with a decentralized community of validators. [3][5]
Overview
Polkadot adopted a multi-phase rollout strategy for its mainnet launch. During the first phase, Polkadot operated as a proof-of-authority (PoA) platform, with six validators from the Web3 Foundation managing the network. [6]
In June 2020, the second phase of the proof-of-stake implementation was initiated, which enabled DOT owners to claim validator slots and receive staking rewards. The first validator election was held during this phase. [6]
In late July 2020, Polkadot's governance system was enabled through Phases 3 and 4, which saw the election of the Council and Technical committees and the acceptance of public proposals. In August 2020, the final phase approved balance transfers of the DOT token. [6]
Polkadot uses a technology that allows specialized chains/networks to exchange messages and communicate with other specialized chains/ networks. Polkadot technology comprises four core features: [2]
Relay Chains
The Relay Chain is the central chain of Polkadot, built using Substrate,[9] Parity’s framework for developing custom blockchains. It forms an integral part of Polkadot, responsible for the network’s shared security, consensus, and cross-chain interoperability. The Relay Chain offers a limited number of transaction types, which include ways to interact with the governance mechanism and participate in consensus. It is designed to be minimal in functionality, with its main purpose being to secure and coordinate the system as a whole. All Polkadot validators are staked on the Relay Chain in the native token (DOT) and verify transactions coming from the connected parachains. [2]
Parachains
Polkadot parachains are independent layer-1 blockchains that connect to the Relay Chain. Each parachain has its own design, token economy, functionality, and governance. Polkadot's network security is shared by the parachains, which do not need separate validator communities and are able to exchange data as well as tokens between chains. Polkadot was developed to enable blockchains to specialize in different features and use cases, thereby increasing efficiency, security, and service quality. [2][4]
Parathreads
Parathreads are parachains that connect to Polkadot using a pay-as-you-go model, allowing blockchains with varying levels of connectivity to the network to access the network at a low cost. Blockchains on Polkadot are able to switch between being parachains and parathreads based on their needs and the availability of parachain slots on the Relay Chain. [2][4]
Bridges
Bridges are a special type of parachain that allow chains and apps on Polkadot to connect and communicate with external networks like Ethereum and Bitcoin. There are two types of bridges in the Polkadot ecosystem:
Bridge modules
Bridge modules allow non-parachains to act as a “virtual parachain” while extending the external or the other chain’s functionality, with the interoperability benefits of Polkadot.
Bridge contracts
They exist on specific parachains that support smart contracts, linking Polkadot and any other smart contract capable or intelligent contract-enabled blockchain. [2][4]
The DOT Token
DOT is the native token of the Polkadot network. It was created after the Web3 Foundation concluded a relatively successful ICO in October 2017 and raised over $140 million by selling 50% of the 10,000,000 DOT token supply. The sale was split between a private sale, which raised over $80 million, and a public sale, which raised the remaining. [22]
On Nov. 6, 2017, a vulnerability was exploited in the Parity multi-sig wallet containing over 500,000 ETH, including $98 million of the $140 million+ in ETH raised through the Polkadot ICO. These funds are frozen, and a debate among the Ethereum community will determine whether these funds can or will ever be recovered. Even if the funds are lost, the Parity team does not believe this will impact their development roadmap. [22]
Despite this event, Polkadot further conducted two private sales. One in 2019, when the foundation announced it sold 500,000 DOT (old) tokens to an undisclosed group of private investors and successfully raised $60 million. The second private sale was held in the summer of 2020 and raised 3,982.07 bitcoin (BTC) worth an estimated $42.76 million upon completion. [22][4][23]
DOT tokens, by design, have a 10% inflation rate in the first year, after which validator and nominator staking dynamically determine the inflation. [20]
DOT holders will have:
- The ability to act as a validator, collator, nominator, or fisherman.
- The ability to participate in the governance of Polkadot.
- The ability to be a collator for a parathread by making bids for block inclusion that are denominated in DOT.
- The ability to participate in the decision-making process in relation to global upgrades and/or changes to Polkadot. [21]
The DOT token serves 3 distinct purposes: Governance over the network, Staking, and Bonding. [21][5]
Governance
Polkadot token holders have complete control over the protocol. All privileges, which on other platforms are exclusive to miners, will be given to the Relay Chain participants (DOT holders), including managing exceptional events such as protocol upgrades and fixes.
Staking
Polkadot uses Nominated Proof of Stake (NPoS) technology. A decentralized network of validators is selected by nominators to secure Polkadot's multichain ecosystem, and the block rewards are distributed between validators and nominators. [11] DOT can be staked natively on Polkadot, on Non-Custodial Wallets, Liquid Staking/Third-Party Pools, or on Custodial Exchanges. [11]
How to stake natively on Polkadot
By joining a nomination pool
Nomination pools are a feature of the Polkadot staking system that allows users to pool their DOT tokens together on-chain to nominate validators and receive rewards. DOT holders can join a nomination pool with a minimum of 1 DOT and pool members split rewards and penalties proportionally. [11][12]
Nominating directly
Nominators select trustworthy validators and earn rewards in return. Nominators can lose a portion of their staked DOT if a chosen validator misbehaves. [11]
Opening a nomination pool
Confident users can open their own nomination pool and allow others to join and pool their stake. [11]
Running a validator
Validating is for more technical users who secure the network and produce blocks on the Relay Chain. Validators are rewarded for good behavior and can lose DOT for bad behavior. [5][11]
Bonding
New parachains are added by bonding tokens. Outdated or non-useful parachains are removed by removing bonded tokens. This is a form of proof of stake (PoS).
DOT is inflationary, which means that, unlike Bitcoin, there is no maximum number of DOT. The rate of inflation is not fixed: it is designed to be 10% in the first year. The DOT generated is used for validator rewards, with the remainder going to the Treasury. The smallest unit of account in the ecosystem is a Planck, equivalent to 0.0000000001 DOT. [6][5][2][4]
The Polkadot Treasury
The treasury raises funds from validator rewards, transaction fees, and slashes (the fine paid by a validator who acts maliciously or incompetently). These funds are allocated for the operation of the network and the ecosystem, with some funds available for community-supported projects through on-chain treasury funding proposals, which are voted on by the Polkadot Council. [2]
Features
Twin blockchain (Kusama)
Kusama (KSM) is a platform, similar to Polkadot (DOT), that allows users to launch and operate their own blockchains. It is referred to as a "canary network" for Polkadot, meaning that new code and features are tested on Kusama before being implemented on Polkadot. The Kusama network is not a testnet because, unlike a testnet, it holds significant economic value. [19]
Kusama is a sandbox environment for Polkadot providing developers with greater flexibility to experiment with their projects on a platform that replicates Polkadot’s major designs. The primary purpose of Kusama is to aid in the testing process, offering more relaxed regulations than Polkadot, including less rigorous governance parameters. [19]
Parallel Processing
Polkadot can process transactions in parallel. Other blockchains, for example, Ethereum network, execute transactions individually, which can lead to longer transaction times. To increase transaction speeds, Polkadot uses its parachains to spread transactions across the broader network. [7]
Multichain
Often described as a layer-0 blockchain, Polkadot creates the infrastructure for other blockchains to build on through two key developments: the relay chain and parachains.
GRANDPA
Polkadot uses a modified version of the proof-of-stake (PoS) consensus protocol known as nominated proof-of-stake (NPoS). Polkadot’s NPoS model lets participants use their tokens to vote on validators, and only those validators who have received enough backing can start validating transactions.
Polkadot uses the consensus mechanism GRANDPA (GHOST-based Recursive Ancestor Deriving Prefix Agreement) to be able to handle millions of blocks at once instead of validating blocks at a fixed rate. In doing so, GRANDPA allows Polkadot to rapidly settle transactions while the blockchain is functioning optimally, and to make up for network lags when the blockchain is not performing as well. [7][6]
Polkadot Fellowship
The Polkadot Fellowship is a rules-based ranked-membership organization administered and empowered through blockchain logic hosted on the Polkadot Network and it was launched by Gavin Wood. [13]
The Fellowship is a mostly self-governing expert body with a primary goal of representing the humans who embody and contain the technical knowledge base of the Polkadot network and protocol. Unlike the current Technical Collective, it is designed to be far broader in membership (i.e. to work well with even tens of thousands of members) and with far lower in barriers to entry (in terms of administrative process flow and expectations of expertise). Becoming a candidate member in the Fellowship is as easy as placing a small deposit. [14][15]
To ensure a high quality of collective decisions in light of such a broad membership, members are associated with a rank to designate the degree to which the system expects their opinion to be well-informed, of a sound technical basis, and in line with the interests of Polkadot. The members of the Fellowship can vote on any given Fellowship proposal and the aggregate opinion of the members (weighted by their rank) constitutes the Fellowship’s considered opinion. The technical means by which the Fellowship votes is exactly the same code (Substrate pallet) as the means by which the Polkadot stakeholders vote in a referendum and it has the same facilities (multiple tracks, agile delegation, etc.).[15]
First Successful Parachain Migration from Kusama to Polkadot
Kusama is considered a natural starting point for teams building in the Polkadot ecosystem. It allows teams to complete their early-stage development, stress-test their technology, engage their community, and launch partnerships before upgrading to the Polkadot Relay Chain. [16]
On October 3rd, 2022 KILT Protocol [17] made history by becoming the first parachain to accomplish a full migration from the Kusama Relay Chain to the Polkadot Relay Chain. The migration marks an important technical milestone and it also represents the first instance of a parachain taking the upgrade path from Kusama to Polkadot. This demonstrates an important use case for the ‘canary network’ model pioneered by Polkadot, giving Web3 projects a place to stress-test their technology in a real-world environment and mitigate risk before upgrading to a more stable production network. [16]
The historic migration was made possible by Polkadot’s tech stack, in particular, the cross-chain interoperability standard XCM [18] and the Solo-to-parachain pallet developed by Parity Technologies. XCM allowed KILT to generate the final block on the Kusama parachain, followed by the first block on the Polkadot parachain. The Solo-to-parachain pallet allowed the KILT parachain to switch networks. All data and services built on KILT remained unchanged. [16]
Polkadot 2.0
In July 2023, Gavin Wood introduced Polkadot 2.0 during his talk at the Polkadot Decoded conference, emphasizing a shift in perspective towards the new version. The talk discussed the progression from Bitcoin to Ethereum to Polkadot as a journey of scalability and increased power. Polkadot was described as a multi-core supercomputer, offering efficiency and scalability, with a focus on building a system that provides secure, trustless, and feature-rich applications. [25]
In his keynote speech, Gavin Wood outlined the proposed changes for Polkadot 2.0, focusing on the dynamic procurement of “cores” and a paradigm shift in Polkadot’s architecture. Wood explained that the current lease model for cores would be replaced with a system of selling “core time.” This approach offers developers increased flexibility through two types of sales: bulk and instantaneous. [25]
Wood said Polkadot 2.0 would use a new system for allocating blockspace. The system would be more flexible than the current lease model, allowing developers to buy blockspace as needed, either in bulk or on demand. This, according to the crypto network developer, would make it easier for new projects to enter the Polkadot ecosystem. He explained that the changes would also make Polkadot more attractive to Web2 businesses adopting Web3 frameworks. [26]
Polkadot's JAM Chain
JAM, short for Join-Accumulate Machine, represents a prospective design to succeed the relay chain. Its name originates from CoreJAM, denoting Collect Refine Join Accumulate, which outlines the computation model the machine embodies and that was first described in an RFC by Gavin Wood. However, within the actual chain, only the Join and Accumulate functions are executed, while the Collect and Refine processes occur off-chain. [27][28]
“JAM is a protocol combining elements of both Polkadot and Ethereum. It is a prospective path to replace the Relay Chain with a more modular, minimalistic design.”
Web3 Foundation added that JAM would allow Polkadot to run generic “services,” smart contract logic to process the execution result on cores. A parachains service will run existing Substrate-based parachains, meaning developers can still use Substrate to develop and deploy their blockchains. [27]
On April 18, 2024, Web3 Foundation (W3F) in conjunction with Gavin Wood announced a 10 million DOT ($74.5 million) prize pool;
"to foster diversity within the development of JAM, a protocol combining elements of both Polkadot and Ethereum," according to the team. [31]
"Through the JAM Implementer’s Prize, W3F are seeking developers to diversify and strengthen network resilience. One of the key features of JAM is the guaranteed seamless compatibility for developers. W3F’s mission is to nurture cutting-edge applications for decentralized web software protocols." [29]
On the purpose of the JAM implementer's prize, Web3 Foundation said:
"A truly decentralized protocol should be able to support multiple client implementations. The JAM Implementer’s Prize is designed to catalyze this by funding and supporting projects that contribute to the development of JAM implementations from the outset. We believe that supporting a range of implementations in various programming languages will strengthen the ecosystem’s foundation. It distributes the power of protocol implementers more widely and reduces the risk of a bug in one implementation taking down the entire network."[29]
The JAM Implementer’s Prize will complement present and future funding initiatives that support Polkadot’s ecosystem and technology stack, such as Decentralized Futures, Grants, and Polkadot’s on-chain treasury. [29]
The prize will be activated if and when JAM becomes ratified as a Polkadot technology via the network’s on-chain governance mechanism. [29][30]
Cross-Consensus Message Format (XCM)
The Cross-Consensus Message Format, or XCM, is a messaging format and language used to communicate between consensus systems. [32]
One of Polkadot's main functionalities is interoperability amongst parachains and any other participating consensus-driven systems. XCM is the language through which complex, cross-consensus interactions can occur. Two blockchains can "speak" XCM to interact with each other using a standard messaging format. [32]
XCM has four high-level core design principles which it stands to follow:
- Asynchronous: XCM messages do not assume the sender will be blocking on its completion.
- Absolute: XCM messages are guaranteed to be delivered and interpreted accurately, in order, and in a timely fashion. Once a message is sent, one can be sure it will be processed as it was intended to be.
- Asymmetric: XCM messages, by default, do not have results that let the sender know that the message was received - they follow the 'fire and forget' paradigm. Any results must be separately communicated to the sender with an additional message back to the origin.
- Agnostic: XCM makes no assumptions about the nature of the consensus systems between which the messages are being passed. XCM as a message format should be usable in any system that derives finality through consensus.
These four design decisions allow for XCM messages to be a reliable yet convenient way to properly convey the intentions from one consensus system to another without any compatibility issues.
XCM cannot send messages between systems. It is a format for how message transfer should be performed, similar to how RESTful services use REST as an architectural style of development, where HTTP requests contain specific parameters to perform some action. Also, XCM messages by themselves are not considered transactions. XCM describes how to change the state of the target network, but the message by itself doesn't perform the state change. This partly ties to the term, asynchronous composability, which allows XCM messages to bypass the concept of time-constrained mechanisms, like on-chain scheduling and execution over time in the correct order that was intended. [32]
Core Functionality of XCM
XCM is a platform that allows for multi-hop, multi-network communications. It introduces some key features and additions to cross-consensus messaging, including:
- Programmability - the ability to have expectations for messages, which allow for more comprehensive use cases, safe dispatches for version checking, branching, and NFT/Asset support.
- Functional Multichain Decomposition - the ability to define mechanisms to cross-reference and perform actions on other chains on behalf of the origin chain (remote locking), context/id for these messages, and asset namespacing.
- Bridging - introduces the concept of a universal location, which allows for a base reference for global consensus systems for multi-hop setups. This location is above the parent relay chain or other consensus systems like Ethereum or Bitcoin.
A core part of the vision that XCM provides is improving communication between the chains to make system parachains a reality. For example, the Polkadot relay chain handles more than just parachain management and shared security - it handles user balances/assets, auctions, governance, and staking. [32]