In Zerocoin-based networks, zerocoins exist in fixed denominations, e.g 10, 100, 1,000, 10,000, etc. Without going into detail, this provides anonymity in a similar way cash exists in fixed denominations. Basecoin is that portion of your wallet’s balance that’s not convertible to Zerocoin denominations. Both Basecoin and Zerocoin represent the same token, in our case veil, with the difference being that Zerocoin allows you to spend your veil without having a link between yourself and the spend.
For example, say you had one 100 Zerocoin veil, and purchased something that cost 7 veil. Your 100 Zerocoin veil would be sent to the network, and you’d receive 93 Basecoin veil in return. Your Veil wallet would convert 90 of those basecoins to nine Zerocoin denominations of 10, leaving 3 Basecoin veil in your wallet. The Basecoin balance in your wallet is commonly referred to as your “change”.
In Veil your wallet will automatically mint your available balance into zerocoins, the standard denomination for autominting is 10, but can be changed to 100, 1,000 or 10,000 based on user preferences. Any amount below 10 is not eligible to be minted into zerocoins, and must be held as basecoin until at least 10 basecoins are acquired.
Something important to remember is that in Veil, contrary to other Zerocoin-based networks, the Basecoin state is also anonymized; in our case, with the use of RingCT technology. This results in what we call “always-on” privacy—such that the spending of both Zerocoin and Basecoin veil are protected.