Official Online Announcement On Major Upgrade of QuarkChain Mainnet & Multi-native Token Function
Dear QuarkChain Community and Miners,
The QuarkChain mainnet has been launched for nearly one year. For the past few years, we followed the charted roadmap steadfastly; whether it is state sharding, heterogeneous shards, or multi-native tokens, we overcame difficulties one by one with our determination to pursue cutting-edge technology and our desire to contribute to the blockchain industry. Now, we are proud to announce that our mainnet will be upgraded on April 30,2020, which is the first major upgrade since its launch. After upgrading, the multi-native token will be officially online and open to the community after stable operations.
Introduction of the Upgrade
Upgrade and Changes:
- * Enables native token auction system contract (QCEP-005) and adds minting pre-compiled contract for auctioning / issuing new native tokens
- * Enables native token gas exchange system contract (QCEP-006) and updates EVM accordingly to support paying native tokens as transaction fees
- * Adds pre-compiled contracts to support querying native token balance in smart contracts
- * Reduces PoSW staking requirements on shard chains with the same rate as coinbase reward reduction (i.e. 0.88x) after each epoch ends
- Migrates CHAIN_MASK_LIST to FULL_SHARD_ID_LIST configuration values while being backward-compatible for older configuration files
- Various small fixes and improvements
(Those items listed with asterisk * mean they are consensus changes, and would lead to forks if clients are not updated accordingly.)
Time of Upgrade:
April 30, 2020 17:00:00 AM GMT-07:00 DST.
Operation of Upgrade:
- For miners who built the node themselves, please download and upgrade the node to avoid losses:https://github.com/QuarkChain/pyquarkchain/releases/
- Users who joined QPool mining pool do not need additional operations since the upgrade will have been completed automatically.
- QKC token holders do not need to operate.
For more information, please check: https://github.com/QuarkChain/pyquarkchain/releases/tag/mainnet1.4.2
How to Launch Native Tokens
- At the beginning phase of project development, we will host regular auctions on the chain. Participants will need to bid using QKC and only one winning bidder will obtain the rights to mint tokens from this round of auction
- Once a token name has been taken by a winning bidder, it cannot be auctioned again. The only way to get the token name is to have its ownership transferred from the existing token owner.
- The time for multinative token auctions would be weekly or monthly, please pay attention to our official channels for latest announcements.
The Mechanism That To Use QuarkChain Multi-native Token as Payment of Transfer Fees
At the end of the auction, if any participants in the community need to use the newly minted native tokens to pay for transaction fees, they can deposit a certain quantity of QKC as the reserve for transaction fees. When executing the transaction, the network will look up the transaction fee and the exchange rate between issuing amount and transaction fees and deduct the corresponding amount from the QKC reserve. The token economics will be determined by the winning bidder. If one would like to keep the total number of tokens constant over time, after issuing the tokens, the winning bidder can pass the right to token issuance to a system address.
QCEP-6 contracts will be configured on each shard. The participants within the token community can choose to equip the token with the ability to pay for transaction fees. To enable this feature, community participants will need to provide QKC to be saved on system contracts whereby the system will convert QKC automatically for exchanging tokens. This conversion is analogous to exchanging foreign currencies from a bank. After conversion, the converted QKC will become the transaction fees for the miners.
In terms of exchange rate, the QuarkChain mainnet allows users to specify the exchange rate between the multinative token and QKC. Any user can interact with the “universal native token manager” smart contract to propose an exchange rate. The agreed exchange rate will convert multinative token into corresponding amount in QKC to pay for transaction fees. In this way, normal users would not require buying extra QKC to pay for transaction fees, making this process more convenient for all.
The Function of Multi-Native Token
Native token refers to tokens that are directly issued by the blockchain infrastructure for maintaining normal operations. These tokens are used for realizing equity and for implementing fixed functions of the blockchain systems. Prime examples are Bitcoin, Ethereum, and QKC. On the basis of application protocols, tokens that are built on top of existing blockchain systems and are used for deploying smart contracts are known as smart contract tokens. It is widely adopted on the dApps of different public chains, of which ERC20 protocol is the most famous.
ERC20 is Inconvenience
The ERC20 protocol stands out as the common standard for the digital token market. When using ERC20 tokens for transactions, in order to process the transaction, one would need to pay transaction fees using ETH native tokens, this extra step becomes daunting for novice who are new to cryptocurrencies and blockchains. Also it is not allowed to directly use the default functions to execute. Instead, it would require going through multiple cumbersome procedures and increase the level of difficulty of creating dApps. Therefore, for some developers, in order to develop dApps more freely, free of the limitations of ERC20 tokens imposed by the Ethereum ecosystems, they choose to develop their own public chains and have their own say in the infrastructure. Looking at the landscape of public chains in general, some public chains that are modeled after Ethereum have also adopted a similar design where its smart contract tokens also bear similar deficiencies. While the industry is growing over time, such deficiencies have plagued the entire industry.
How to Solve the Lack Functions of Smart Contract Token
If one can add more functionalities to the ERC20 contract, such that the tokens issued can realize functionalities that resemble that of Ethereum’s native token ETH, it can result in multiple benefits. Not only can it can lower users’ costs and benefits more developers, it would also stimulate more developers to build applications on the platform. In addition, the convenience of multinative tokens will significantly lower the frequency of token exchanges within DeFi applications, which in turn streamline the operations and thus lower cost of processing fees, all of which makes DeFi easier to use.
To overcome this limitation in functionality, QuarkChain is now launching a unique multi-native token contract (referencing QCEP-5, QCEP-6), which attempts to resolve the problems appeared in smart contract tokens such as those appearing in ERC20. The tokens living on QuarkChain’s ecosystem have the same rights as those enjoyed by native tokens QKC and can take up more functional values such as contract deployment and payment of transaction fees than merely as an financial instrument. Developers and users no longer need to face the quagmire of two-tokens-with-different-rights and forsake developing and using smart contract tokens. QuarkChain’s multi-native token will lower the cost of development and learning, enabling more industry applications to appear.
The Value of QuarkChain Multi-native Token
On the QuarkChain mainnet, multinative tokens have the same status as that of QKC within the QuarkChain system; it can deploy contracts, cross chains, and pay for transaction fees if certain criteria are satisfied. Other than not being able to participate in governing the QKC network, native tokens can realize all functions of QKC, including cross-chain transfer of fees; it will also overcome the problem of inconvenience encountered by most of the DeFi. In future contracts, we will improve the functions of multinative tokens to be identical as that of QKC and eliminate the last barrier of applications of multinative token.