This specification is a standard to create minting baton functionality for CashTokens. Bitcoin Cash does not have the concept of a minting baton for fungible CashTokens natively because then the token amount could overflow 64-bit integer size. Other token protocols, such as SLP and ERC20, allow for issuing supply on an ongoing basis with a minting token. The CashTokens specification does propose how to mark supply as reserved, held by the trusted entity and not in circulation but this has not been implemented anywhere thusfar because it is not straightforward.
This standard uses a covenant holding the reserved supply to create a minting baton NFT for fungible CashTokens. An extension to the BCMR metadata schema is specified for tokens following the MBC token-standard, this way applications such as wallets and blockexplorers can be correctly display the NFT as a MBC minting baton and can easily show the issued supply.
This standard uses a covenant to achieve the same functionality as a classic minting baton that controls issuance. The minting covenant is tracked using an authchain starting at the covenant’s creation making it easy to track the minting history. The authority to mint tokens is held by the minting baton NFT making it easy to track changes to the minting setup.
By keeping the design simple, this specification aims to be a practical solution which can be used immediately.