Polkadot Parachain Slots
As Polkadot gets closer to mainnet launch, the Web3 Foundation is increasingly receiving inquiries about parachains: the initial allocation and the steps a project takes to become a parachain.
As Polkadot gets closer to mainnet launch, the Web3 Foundation is increasingly receiving inquiries about parachains: the initial allocation and the steps a project takes to become a parachain. The following is a working document that includes a draft plan for a fair parachain distribution at launch as well as an explanation of how Polkadot will handle additional parachain slot availability in the future.
We have sent an earlier version of this document to a number of projects building on Polkadot and we are now offering it to the greater Polkadot community to elicit feedback from additional parachain builders and stakeholders.
The mechanics of parachain leasing is still being researched, tested and deployed. We hope projects contribute to this process as it evolves. Much of the system is subject to change, but what we can guarantee today is the following:
- There will be a finite number of parachain slots that will start low at genesis and increase over time.
- There will be unpermissioned, market-based leasing of slots. To ensure fairness in allocating parachain slots we decided to use auctions. Anyone can participate; the auction format is a candle auction modified for blockchain with a retroactively determined random ending time.
- If someone (individuals or smart contract) wins an auction they don’t need anyone’s permission to deploy their parachain.
- Parachain slots will have a finite lifetime.
- A small number of slots will be reserved for a limited period of time for special “common good” parachains to be administered by the Web3 Foundation.
These general points are unlikely to change prior to genesis, whereas precise estimates on the number of parachain slots and how much they will cost is very difficult to make at this point.
Parachains on Polkadot
Parachains are the term that we use to describe an external system (typically, but not necessarily, a blockchain) that forms a constituent member of Polkadot. A blockchain can interact with Polkadot in two main ways: as a native parachain and through a bridge parachain. To deploy as a native parachain a team could build using the Cumulus framework (based on Substrate), develop from scratch or use one of the upcoming Parachain Development Kits. Native parachains can make use of faster inter-chain messaging and Polkadot’s shared security. This saves you needing to inflate your currency to incentivize miners or stakers to secure your network. Alternatively, if a blockchain has a set of legacy design decisions that makes it difficult to move under Polkadot wholesale, it can retain its own consensus and finality mechanism and connect via a bridge hosted on a parachain to become a “bridge chain”. For bridge chains and the Polkadot network to communicate, the bridge chain must be finalized before messages can be passed securely. It is likely that multiple blockchains would be able to share the same bridge parachain and thus the cost of its slot.
Why is there a finite number of parachains?
Parachains cost resources to ensure they remain secure and live. There are a finite number of parachain slots because there are a finite amount of resources in the Polkadot network. This is similar to other networks that also contain bounds on their computational throughput and introduce fees and other measures to manage it. While it is not yet clear how many parachains the design of Polkadot “version 1” will support, the actual amount of chains that can be supported at genesis will naturally be less as aspects of the system have yet to be optimised. As mentioned in the original Polkadot whitepaper, there are key scalability constraints with Polkadot “version 1”, specifically quadratic overhead for message queues, that lead to a natural upper bound. DOTs must be bonded to acquire a parachain slot, thus parachains have value at stake and attaching a useless chain is expensive.
Goals for parachain roll-out
We currently expect that Polkadot will be launched with a handful of parachain slots. Polkadot’s parachain slots will increase from around five to between 50 and 200 slots as various optimisations in the implementation are made during the first year or two of operation. The objectives of this roll-out plan, in order of importance, are:
- Ensure security on the Polkadot relay chain.
- Allow for the projects that add the most value to Polkadot to onboard first.
- Maintain demand-supply balance for parachain slots so that there are appropriate economic incentives to be a validator on the network.
- Allow for the proliferation of experimentation and novel use-cases as the network scales.
Included in this roll-out plan are “genesis parachains” that will launch at genesis and auctioned parachains that will become available after genesis. The following sections explain these.
Genesis Parachains
For genesis it is unlikely there will be many parachains. In so far as there are parachain operators, the slot owners will be determined by the Web3 Foundation in two ways:
- The Web3 Foundation has sponsored certain common-good chains, including bridge chains and a basic smart contract chain. If these are ready by genesis, then they will be included.
- The Web3 Foundation will run one or more off-chain auctions, in a similar format to the on-chain, post-genesis auctions described below, to let teams lease slots in return for placing more DOTs under deposit than anyone else.
Common-good chains include those that the Web3 Foundation deems strategically important or which a commitment to developing has already been made. This includes:
- Ethereum-Polkadot Bridge
- Bitcoin-Polkadot Bridge
- Critical infrastructure projects, for example DEXs or stablecoins.
For an up to date version of this explanation please visit the Polkadot Wiki.
Parachain Auction
The vast majority of chains will be offered in an open auction anyone can participate in.
In perpetuity, there will be a constant availability of parachain auctions so that if your project wants to take a slot in Polkadot there will be sufficient opportunities to bid on and secure one. As demand for slots increase over time, the governance mechanism can introduce new slots. Conversely, should we reach a point where there are too many parachains, the overall number of slots can be reduced.
Parachain slots are offered under an unpermissioned Candle-auctionmodified to ensure it is fair and secure on a blockchain. This mechanism makes it very difficult for an actor to try to front run the system or grief honest bidders by auction sniping, which makes the auction unfair.
Bidders can be existing parachains looking to renew or extend their lease or they can be new actors looking to deploy a parachain. In the latter case, those actors can be regular Polkadot accounts (i.e. accounts with funds held directly on the relay chain) but can also come from parachains themselves, potentially allowing smart contracts to make bids. This could therefore even allow a community to raise funds via a smart contract to secure a project’s parachain slot potentially providing some reward to the backers.
Process for obtaining a parachain slot
As mentioned, the structure of rolling availability is such that there should always be parachains coming up for auction.
These aren’t really sales in the sense that the bidders are buying anything. They are simply placing a sum of DOT tokens up for a fixed-term deposit. The lease’s effective cost is therefore just the opportunity cost, which may be modelled as the devaluation through inflation. At the end of the parachain’s lease, the deposit will be returned.
The calendar for parachain slots is split into six-month “lease periods”. All slots have their lease periods begin and end at the same time, so for any given lease period there are just a number of identical slots.
An auction is for the right to occupy a parachain slot in each of four periods which make up the next two years worth of lease time. These four six-month periods may all go to the same bidder (gaining them a two-year uninterrupted period beginning at the start of the next lease period), or they could go to four individual bidders, or some combination.
This format allows for various use cases; a new project may wish to “try out” being a parachain for six months only by purchasing just the first period. Conversely, a project might want to secure a two-year runway by making a single bid for all four periods. Or perhaps be guaranteed a 12-month period in 12 months’ time once the project is developed by making a bid on the final two periods. Existing parachains may wish to keep their position renewed by consistently winning the final slot and thus always keeping their remaining lease to between 18 and 24 months.
The auction mechanism is designed to maximize the amount of DOTs held on bond over the entire two-year period, so the highest single bidder for any given slot’s lease period may not always “win”.
The example scenario and Figure 1 below illustrate how the auction mechanism works. Assuming there is only one parachain slot available (as will be the case with all initial auctions):
Charlie bids to deposit 75 DOTs for the entire four periods.
Dave bids to deposit 100 DOTs, but only for the final two periods (he doesn’t care about the first two).
Emily bids to deposit 40 DOTs, but only for the first two periods (she doesn’t want the final two).
Now we try to work out how to combine these bids in such a way that one or more bidders get allocated their desired slots. There are four possible way to allocate:
Charlie wins, Dave and Emily lose. In this case 75 DOTs are held on deposit for four periods, giving an average of 75 DOTs held over the total four periods.
Dave wins, Charlie and Emily lose. In this case 100 DOTs are held on deposit for two periods only, giving an average of 100 * 2 / 4 = 50 DOTs held over the same time. This is worse.
Emily wins, Charlie and Dave lose. In this case 40 DOTs are held on deposit for two periods only, giving an average of 40 * 2 / 4 = 20 DOTs held over the four periods. This is way worse.
Finally, we could have Dave and Emily both winning, with Charlie losing. In this case 100 DOTs are held on deposit for two periods, and 40 DOTs are held for the other two periods, giving an average of (100 * 2 + 40 * 2) / 4 = 70DOTs held over the four periods. This is good, but not as good as just allocating to Charlie.
So, although Dave had the highest bid, when we do the calculations we see that since he only bid for two lease periods, he would need to share the slot with Emily who bid much less for the other two periods. Together Dave’s and Emily’s bids don’t leave as much on deposit through the full four-slot lease period as Charlie’s bid and so it is Charlie that gets allocated the slots.
Participating in an auction
All auctions for parachain slots will be held in DOTs. Projects wishing to deploy a parachain could obtain DOTs in a number of ways including:
- Issuing their own parachain tokens and exchanging them for DOTs on the open market
- Buying DOTs on the open market with existing resources
- Holding a crowdsale to raise DOTs
- Applying for a Web3 Foundation grant
In addition, it may be possible for a group of projects to aggregate themselves into a single chain to share the cost of a parachain slot. For example, several bridges could reasonably share a single parachain slot.
Cost of a Parachain
In absolute terms of DOT tokens, parachain slots are free: DOT tokens required to secure s slot are only held on deposit, to be returned once its tenure as a parachain is over. For projects that have capital (particularly crypto-capital) “sitting around” and which are already sanguine about gaining economic exposure to the Polkadot network, this “price” is near-zero.
For projects not yet bought in to Polkadot or which do not have pre-existing capital-reserves, then the effective “price” for leasing a parachain slot is simply the opportunity cost of hodling DOTs rather than any other asset. Two things are worth noting here: for a project to succeed as a parachain it will necessarily add utility to the Polkadot network and as such boost its value-proposition and overall user base. Network effects being what they are, the economic effects of these changes should be super-linear. It is therefore reasonable to expect parachain projects to want to hold some portion of their asset portfolio in DOTs over the course of their tenure in order to capture the value of their own success.
Second, within the Polkadot network, DOT tokens are required for four activities: governance, parachain leasing, transacting and staking. DOTs already under deposit for a parachain lease are unable to be used for three of those four activities (governance is still possible), thus we may consider the real price as the opportunity cost for not being able to transact with them, lease other slots and stake. While the first two have indeterminate value, the latter is tractable since it is both rewarded by, and used as a bulwark against, inflation.
For Polkadot genesis, staking rewards of up to 20% pro-rata are expected to be paid through inflating the issuance base by up to 10% per year. (This is substantially less than Ethereum’s genesis inflation rate which was around 30%/year, owing to efficiencies associated with BABE/GRANDPA consensus over Proof-of-Waste as used in Ethereum.) As such, the effective price for not staking is really the rewards missed, discounting the fact that no risks were taken and no work was needed. Depending on risk appetite, domain-expertise, labour costs, staking system efficiency and DOT valuation, the 20% pro-rata could only be considered a theoretical maximum: the real DOT-based opportunity costs would likely be some far smaller portion.
In comparison, we would note that the annual cost for securing major chains (e.g. Cosmos, Tezos and EOS) are in the tens of millions of USD per year, with Ethereum and Bitcoin in the billions. Thus the cost of security in Polkadot would be a full three to five orders of magnitude less, and yet would provide fast, arbitrary, trust-free message passing between the host chains, a revolutionary addition.
The top 300 crypto-tokens all have a market capitalization of greater than $10m and almost all have daily volumes in excess of $100k. Assuming a conservative annual inflation factor of 2% for mining, staking or transaction costs, then even the most modest of crypto projects are spending upwards of $200k per year in security. Most would have an economic advantage to leasing a Polkadot parachain slot at these prices rather than use inflation-based consensus which is costly, isolating and often insecure.
Further research and modeling will help inform the likely cost in DOTs of attaining a slot in Polkadot.
We recognize that connecting as a parachain to the Polkadot network is a non-trivial cost. As we scale the network through increasing the number of parachain slots and developing more bridges and light-weight bridges, the overall cost should decrease. In aggregate, shared security on Polkadot should present a considerably less expensive option for network security than securing a network through a wholly owned and individually bootstrapped collection of miners/validators that need to make independent capital allocation decisions.
Governance
There is no explicit mechanism for governance to block or remove parachains in Polkadot. That said, Polkadot is inherently a governable system and as such the governance mechanism can upgrade and mutate the blockchain to anything it decides. Contentious and victimizing mutations are possible, but because it requires the buy-in of multiple groups of stakeholders including the council, validators and long-term token-hodler base, we estimate their practical likelihood to be similar to the chance of a major network passing a similarly malicious hard-fork. In the context of blockchains, governance is novel: Polkadot is undeniably an experiment in numerous bleeding edge technologies and though we hope to mitigate risk through audits, modeling and testing, we can never know for sure what will happen. Hard-forking inevitably remains on the table as a last resort should the experiment go awry.
Just as a parachain is unable to move their DOTs held on deposit for the slot, the lease belongs only to them and it is theirs to do with as they want. Polkadot parachains that are defective (e.g. a parachain whose state transition function allows infinite loops, memory bombs or message spamming) will be recognized by network validators and disabled. Just as solo chains who onboard to Polkadot adopt Polkadot’s consensus, parachains that leave the network give up Polkadot’s consensus. These former parachains become solo chains and must provision for their continued liveness and security.
We can be found on Riot, Twitter and Reddit.
Learn more
- So you want to stake on Polkadot? — Gavin Wood
- Polkadot Wiki — Staking
- Polkadot Wiki — Parachain Slots Auction
- How Nominated Proof-of-Stake will work in Polkadot