By Ingo Rübe, CEO of BOTLabs and project lead for KILT Protocol.
Polimec (Polkadot Liquidity Mechanism) allows the issuance and transfer of multiple cryptocurrencies directly on a dedicated blockchain. The Polimec blockchain (like Polkadot, Kusama, KILT and many others) is built with Parity’s Substrate framework; other Substrate-based blockchains can utilize Polimec to issue tokens and make them available to the market, even before their own network goes live. In that way Polimec serves a similar purpose for the Polkadot ecosystem as the ERC20 contracts do for the Ethereum ecosystem. Polimec will be a community-owned parathread on Polkadot. KILT recently received a grant from the Web3 Foundation to support the project.
Polkadot relies on a strong and lively ecosystem of blockchains built on and around it. Some of these blockchain projects need significant funding, as they will have long runways to grow adoption.
Typically such projects sell their tokens, even before their mainnet launches, through an ERC20 contract on the Ethereum blockchain. This provides instant liquidity, as investors can instantly buy and resell the token.
The ERC20 mechanism has been very successful in the past years, though it has several challenges. With Polimec we seek to repair the main issues and establish a new, Polkadot-compatible mechanism for blockchain projects.
The most urgent problem with ERC20 based tokens is the gas price: any transfer of an ERC20 token calls a smart contract, which results in a gas fee, which can easily amount to more than $20. This makes the trading of the coins in small amounts almost impossible.
Polimec does not use smart contracts. It holds the balances of all Polimec-issued currencies directly on the Polimec blockchain. Gas is paid in the currency in which it is transferred. The maintainers of the network are rewarded with the gas only. Polimec does not have a native currency, which allows for very stable and relatively low gas prices. Like on a mainnet, the gas is paid in the currency, which is actually transferred.
A well-known problem of ERC20 tokens is that most of the coins issued did not really have a promising project behind them. Anyone could issue an ERC20 token within hours, without any curating instance.
Polimec in contrast establishes a community of coin-issuers. As rewards are limited to gas, it was necessary to find a new incentive for maintainers to run the network: only issuers of Polimec currencies can become Polimec maintainers. This way they have the strongest possible incentive to maintain the network: keeping their own token alive.
Gas income is shared (almost) equally amongst maintainers. A new maintainer coming into the group dilutes the income of all others. Since existing maintainers need to vote any new issuer into the network, they will probably only do so if the project is really promising and they want to earn its new currency by receiving gas rewards for their work.
Another more technical problem was the migration of balances to mainnet. This was a complicated and often faulty process, where the balances had to be extracted from the smart contracts then implemented into the Genesis Block of the new mainnet. Users then had to claim their tokens and build a new wallet.
With Polimec, like any other Polkadot-related blockchain built with Substrate, migration to mainnet becomes really easy. Polimec uses the same addresses and cryptography as the new mainnet. To migrate, the issuer of the new currency just stops transfers, migrates all balances to their mainnet and runs the mainnet. Holders of the new currency do not need to claim their tokens, build a new wallet or generate a new address or keypair. They just connect to the new mainnet.
Polimec also supports issuers of new currencies through valuable features for initial coin offerings:
- By monitoring the Polkadot Relay Chain, Polimec can associate DOT transfers on Polkadot with currency sales on Polimec and thus automatically distribute new currency to buyers.
- We envision that currency issuers on Polimec can certify successful KYC/AML to their initial buyers on the KILT blockchain. Polimec checks the validity of these credentials during initial distribution on the KILT blockchain, using cross-chain message passing (XCMP), Polkadot’s communication mechanism.
- An off-chain application will be provided, which allows the design of complex coin offering and distribution schemes.
Exchanges can use the simple transaction-based API of Polimec to perform IEOs or to give their users access to the transferable Polimec-issued currencies. These exchanges could provide the liquidity needed to fuel future projects.
We strongly believe Polimec will become an important building block of the Polkadot ecosystem. Polimec is designed to make a valuable contribution to the community and we hope to see many issuers using it. We look forward to the launch and future success of the project.