To simplify the process of minting Confidential Assets, that have provably limited amount and are minted by a smart contract in an easy and reliable way, we propose to create Beam Confidential Asset Minter DApp with the following specifications:
-
A contract can mint new CA with limited amount specified during minting.
-
Each new Asset type can only be minted once
-
User specifies the following parameters: (Asset Descriptor v1.0 · BeamMW/beam Wiki · GitHub)
Mandatory:
- 3.1 Asset Name
- 3.2 Short Name / Asset Code
- 3.3 Asset unit name
- 3.4 Smallest unit name
- 3.5 Ratio (10^8)
Optional:
- Short Description
- Long Description
- Website
- Whitepaper URL
- Favicon URL
- Logo URL
- Color
-
Asset Minting commission might be larger than standard and the extra will go to BeamX DAO (TBD)
-
Minted Assets can only be witdrawn by Asset Minter.
-
All assets minted through the contract can be seen in a list with all their metadata and amounts
===
NOTE Regarding conversion iof existing assets minted through wallets
In order to convert already existing assets that were minted through wallets, it is possible to create a pool within the contract to deploy new asset minted by the contract in return for the old one minted by the wallet. This implementation, however has a flow, that in any case the owner of the wallet can still mint more assets.
Even though this event can be detected on the blockchain, we feel that it is not a good enough solution in a general case.
Which is why, we propose to add ‘Stop Mint’ functionality in the next 8.0 Hard Fork. This function will allow the wallet owner to issue a transaction indicating that Confidential Asset with a specific id can no longer be minted.