Как отличить право эмиссии Avalanche X-Chain от расходуемых токенов

Набор UTXO X-Chain может одновременно содержать и баланс, и право эмиссии одного актива. Суммирование всех выходов с подходящим asset ID без разбора типа искажает отчёт.

Определите внутренний тип выхода

Декодируйте обёртку transferable output и извлеките asset ID и внутренний выход. У mint output secp256k1 записаны locktime, порог и адреса владельцев. В нём нет суммы, которую можно прибавить к балансу. У transfer output сумма есть.

SECP256K1MintOutput       type 0x00000006    mint authority
SECP256K1TransferOutput   type 0x00000007    token amount and owners

Ведите отдельный учёт права эмиссии

Кошелёк с transfer output на 900 единиц и одним mint output имеет 900 единиц с указанными условиями расходования. Отдельно отразите порог подписей для эмиссии и соответствующий outpoint. После расходования полномочий при выпуске проверьте новый mint output и его владельцев перед использованием прежнего списка ключей.

Источники