Coniare e bruciare token
La supply di un token degli utenti può cambiare dopo l'emissione solo se il suo emittente lo ha permesso. Un token coniabile permette al suo emittente di aggiungere unità in seguito; un token riscattabile permette a qualsiasi detentore di bruciare unità e riprendersi la propria quota della copertura in ZBC del token. Entrambe le operazioni mantengono equa la copertura: nessuna delle due può abbassare la copertura per unità dei detentori che restano.
Coniare: MintToken
MintToken (tipo 12) aggiunge unità alla supply di un token. Solo l'emittente può coniare, e solo un token coniabile. Chi conia deve aggiungere copertura nella proporzione attuale del token, arrotondata per eccesso a sfavore di chi conia:
backing added = ceil( amount × backing ÷ supply )
Un token senza copertura non richiede quindi alcuna copertura quando viene coniato. Un token emesso da un membro di un gruppo di account appartiene al gruppo, e qualsiasi membro abilitato a inviare per il gruppo può coniarlo.
Bruciare: BurnToken
BurnToken (tipo 13) distrugge unità, e solo unità che il mittente detiene: nessuno può bruciare token detenuti da un altro account. Funziona solo su un token riscattabile. Il burn di qualsiasi altro token viene rifiutato, ed è una no-op pagata se un blocco lo include comunque. Chi brucia riceve la quota della copertura corrispondente alle unità bruciate, arrotondata per difetto e mai superiore alla copertura:
ZBC returned = floor( amount × backing ÷ supply )
Gli ZBC provengono dalla copertura del token stesso, non dal saldo dell'emittente.
L'arrotondamento favorisce gli altri detentori
Coniare arrotonda per eccesso ciò che chi conia versa, e bruciare arrotonda per difetto ciò che chi brucia preleva. Con importi contati in unità atomiche, l'effetto è facile da vedere:
In entrambi i casi, ciò che resta per unità agli altri detentori non diminuisce. Pagare nel token la commissione di un trasferimento segue la stessa direzione: le unità cedute vengono arrotondate per eccesso (vedi emettere un token).
Che cosa non si può coniare né bruciare
- ZBC. ZBC non è un token, e nessuna transazione sui token può coniarlo o bruciarlo. ZBC non viene mai bruciato in alcun modo: le penalità, come il 10 % dell'importo bloccato di un nodo perso con l'espulsione, e gli spiccioli degli account eliminati per il canone vanno al pool di longevità, che paga i nodi (vedi ZBC non viene mai bruciato). Il conteggio degli ZBC bruciati tenuto dalla catena resta a zero, mentre i burn di token degli utenti e di monete del bridge vengono conteggiati.
- Monete genesi. Non sono né coniabili né riscattabili, quindi un MintToken o un BurnToken su di esse viene rifiutato, ed è una no-op pagata se un blocco lo include. La supply delle quattro monete del bridge cambia solo attraverso il bridge.
Conio, burn e manutenzione
MintToken e BurnToken possono contenere un pagamento di sopravvivenza che prolunga la vita del token (vedi manutenzione dei token (persistenza)). Quando un token scade senza manutenzione, la sua copertura residua viene divisa tra i suoi detentori in proporzione alle loro unità: l'ultimo modo, oltre al burn, in cui la copertura torna ai detentori.