Polkadot: The Foundation of a New Internet
Polkadot is a global network of blockchains and the foundation for a new, peer-to-peer internet. The platform is powerful enough from a scalability, interoperability, developability and governance perspective to help make the vision of Web3 a reality. The architecture of Polkadot, and what it will look like at launch, provides us a window into its capabilities.
Two previous major innovations in the blockchain space include peer-to-peer money via a distributed ledger (Bitcoin) and a turing complete virtual “world” computer (Ethereum). The innovations of Bitcoin and Ethereum were powerful enough to inspire waves of developers and entrepreneurs to join the crypto industry, however both systems quickly found their limitations. Polkadot surmounts these limitations not by providing the final general-purpose blockchain, but by providing a composability framework for blockchains to communicate.
Polkadot takes the next logical step in decentralized computing, facilitating a shared global state that includes data of blockchains, applications, and money. Any developer who taps into Polkadot’s shared security model can invent, in ad hoc ways, the APIs used for someone else to connect to it. Developers can create a UTXO chain, such as Bitcoin, a blockchain with a virtual machine, such as Ethereum, or a future blockchain yet to be invented. Instead of a single blockchains adding every possible feature (ZK-snarks, Wasm smart contracts, etc.), developers can compose existing blockchain features into higher order applications. Polkadot’s shared security enables a composability model where your blockchain can trust all the other blockchains in the network. If you want to call a smart contract on another chain you can trust the validity of that chain’s contract much the same as an Ethereum contract can trust another Ethereum contract. This is distinct from every other project in the space.
Polkadot is a bet on a polychain future, with potentially hundreds of blockchains all connected together in a flurry of economic activity. There will be bank chains, music chains, and government chains, and Polkadot ensures they are all communicating and operating in a decentralized way. The launch of Polkadot is not a normal blockchain mainnet release in the sense that there is a single blockchain launching with some new feature. Polkadot’s launch will bring with it potentially dozens of new blockchains; composable building blocks to create a new Internet and a better future.
Introducing Polkadot: the Global Network of Blockchains
Polkadot v1 will support up to 100 parachains at launch. With about a year until launch, over 25 projects have already publicly stated their intention to connect their blockchain to Polkadot. This snowballing of announcements provides us with a glimpse into how the Polkadot network will look in production. Will it resemble a cloud of economic activity? A hierarchical tree of chains? A hub with many spokes? Let us first dive into what each of these projects brings to the network and we can then begin imagining use cases for how these blockchains could interact.
Polkadot can be thought of as “infrastructure for infrastructure.” First-order parachains built atop the main relay chain will provide the core building blocks for the system. These will be high-throughput, high-utility chains that provide essential services for the rest of the network. Included in these core first-order parachains could be things like general purpose smart contracts chains, oracles and identity chains.
This first layer of infrastructure can become the foundation for second-order parachains and dApps. For example, a developer may spin up a dApp on Edgeware or Ethereum and if the application is successful, she might take the chain logic and develop it into a parachain to scale and gain efficiencies and control over the user experience. It may be the case that consumer-facing, mainstream dApps won’t be built as parachains, but as parachains or dAppchains built on parachains.
Soon after Polkadot is live, we can expect a number of super interesting chains to begin working together to create novel use cases. Some time after Polkadot’s launch, these parachains could include:
- General purpose chains with Wasm smart contracts (Edgeware, Charred Cherry testnet, Shasper on Substrate)
- Transactions chains with lightning fast payments (Blink Network)
- Oracle chains that make off-chain data available to all contracts on the Polkadot network (ChainLink)
- Identity chains that link accounts to a persistent identity and enable access to other parachains through fewer accounts (Speckle OS)
- File storage chains that incentivize storing data on-chain (Filecoin would be one potential storage chain to build with Polkadot, but to my knowledge no work has been done on this)
- Data curation networks that connect all file storage chains into curated data sets (Ocean Protocol)
- Internet of Things chains that set IoT standards for machine to machine communication (MXC Protocol)
- Financial chains that allow you to hold all your assets in one portfolio, including via bridges to Bitcoin, Ethereum, Bitcoin Cash, Litecoin and ZCash (all POW consensus and UTXO transaction format chains) (ChainX, Katallassos)
- Zero Knowledge privacy chains or bridges to existing ZK-snarks chains (ZCash would be one potential chain to build with Polkadot, but to my knowledge no work has been done on this)
How to Leverage Polkadot’s Capabilities
Polkadot aims to enable the vision of Web3 by providing a scalable and interoperable platform for decentralized systems to interact. This means providing a scalable, customizable platform for dApps and a rich ecosystem of blockchains all interacting through interchain message passing.
The Polkadot relay chain can send arbitrary messages, trust-free (in part due to the shared security model), between chains. Most folks imagine parachains in a constant flow of arbitrary communication, but for efficient and inexpensive interchain message passing to work in practice the system will probably be more complex than Chain A querying Chain B every time it needs something. Interchain messaging provides the most utility with the lowest friction when you want to have one chain autonomously effect a change of state on another chain.
Interchain messaging can of course be used to simply ferry data from one chain to another (e.g., you want to query something on an oracle chain), but it’s expensive because you must pay the relay chain’s validators. Interchain messaging is also asynchronous, meaning that your parachain would need need to be able to handle any replies from another parachain some blocks in the future.
If your dAppchain needs to query an oracle chain for some data, initially you’d likely want to build an off-chain service that gathers the relevant data and the proof from the oracle chain, providing these to the querying dAppchain just in time. This kind of service will likely be built into the Polkadot protocol at some time in the future. Gavin Wood discusses the early research into off-chain compute at his February M-1 presentation.
Submitting proofs to the chain you want to interact with could be used in other contexts too, for example to race cryptokitties. Described by Gavin Wood in the Polkadot Watercooler, you could have a pub/sub model where a racing game chain asks a kitties chain to message it whenever there is a new kitty. Another option that is cheaper but has an off-chain component would be to have someone update the racing game chain by sending a normal transaction with a proof when a new kitty is bred. An even cheaper option would be to call into the racing game chain with a proof of your two kitties whenever you want to race.
How to Become a Parachain
The best way to start building for Polkadot today is to build your blockchain with the Substrate development framework. Blockchains built with Substrate can easily be deployed on Polkadot when the network goes live later this year.
When the Polkadot network launches, parachains will be on-boarded into the network for free. After a short grace period, parachains will be expected to “bond” DOT tokens to lease a parachain slot. The governance system, initially voting by holders of staked DOTs, can change this by enacting rules that require parachains to lock up DOTs to secure a slot. Once a parachain lease is expired, the bonded DOT tokens are returned to the lessee. Stakeholders can even decide that certain parachains be allowed to operate in the network for free. This barrier to entry should help regulate the use of parachain slots so that the most high throughput chains who provide the most utility to the network can reliably secure a slot.
While it may be expensive to buy DOTs and plug your blockchain into Polkadot, operating a parachain is essentially free since parachains can make transactions on their networks costless. Thus, it is more expensive to lease a parachain (opportunity cost of locking up DOTs), it can be less expensive (or free) to send transactions within the parachain. This is compared to spinning up a smart contract on Ethereum, which is cheap to do but expensive to operate and use because of gas. A migration path for dApp devs could be to spin up a smart contract on Ethereum or Edgeware, and if it’s successful and there is traction for the application (so much so that gas costs add up and scalability issues kick in) then the dev can take the chain logic and port it into a parachain where she has more control over the user experience.
Aragon’s Co-Founder Jorge Izquierdo recently explained why they’re strongly considering building on Polkadot. Building on Polkadot will allow “Aragon OS and DAOs to be super efficient, be opinionated, have our own virtual machine,” and enable other people to easily build on top of it. Jorge wants to make Aragon “free to use,” stating that “no one cares about gas or fees, people just want to use products. Having our own layer one blockchain on top of Polkadot will allow us to have way more control” over the user experience.
Feedback from projects like Aragon is invaluable to us. We encourage everyone who is interested in experimenting with new technologies to take Substrate for a spin. To get started visit the Substrate Developer Hub and join the Substrate Chat for support questions.
If you’re thinking about interesting use cases for Polkadot then identity and oracles should be top of mind. There are just two teams who have publicly stated their plans to work on these use cases: ChainLink for oracles and Speckle OS for persistent identities across blockchains. It’d be great to see more teams develop solutions for cross-chain data feeds and identity. Grants are available from the Web3 Foundation, get in touch if you’re interested!