На Ethereum токен — это смарт-контракт. Каждое правило, которое он применяет, — это код, который кто-то написал, проверил и развернул. @hedera придерживается принципиально иного подхода.
Токены как записи нативного реестра
На большинстве блокчейнов токены полагаются на смарт-контракты, а это означает более высокие комиссии, более медленные скорости и дополнительную сложность. Hedera устроена иначе: токены являются нативными, с выделенными API для быстрых, недорогих переводов и мгновенной финальности. Вместо того чтобы развертывать контракт для кодирования поведения токена, эмитенты настраивают набор криптографических ключей на момент создания токена. Эти ключи определяют всё, что токен может и чего не может делать.
Ключ admin может выполнять операции обновления токена и удаления и имеет полномочия изменять ключ supply, ключ freeze, ключ pause, ключ wipe и ключ KYC. Также он может обновлять treasury-учетную запись токена. Каждый из подчиненных ключей выполняет конкретную функцию. Ключ supply управляет общим количеством токенов и может использоваться для чеканки новых токенов или сжигания существующих. Ключ freeze применяется для заморозки или разморозки учетных записей токенов, и когда учетная запись заморожена, она не может выполнять никаких транзакций. Ключ pause имеет полномочия ставить токен на паузу или снимать с паузы, и постановка токена на паузу препятствует его участию во всех транзакциях.
Ключ Wipe и неизменяемость
Ключ wipe используется для очистки баланса учетной записи токена; это может быть полезно, когда владелец учетной записи потерял доступ к ней или она была скомпрометирована. В документации Hedera он также описывается как инструмент для возвратов средств или корректировки распределений, предоставляя регулируемым эмитентам механизм для возврата ошибочно распределенных токенов без повторного развертывания логики контракта.
Критическое ограничение проектирования формирует всю систему: каждый ключ является необязательным, и любой ключ, который не был указан при создании, нельзя добавить позже. Нельзя поставить токен на паузу, если у него нет ключа pause; и если этот ключ не был задан при создании токена, невозможно выполнить обновление токена, чтобы добавить его. Если ключ admin оставлен пустым, токен может восприниматься как неизменяемый: его нельзя обновлять или удалять. Токен, выпущенный вообще без ключей, начиная с самого первого дня является полностью неизменяемым, без администратора, способного изменить его поведение постфактум.
Ключевая модель также имеет последствия для прозрачности. Многие проекты NFT требуют, чтобы их токены оставались неизменяемыми, однако некоторые владельцы проектов непреднамеренно создавали токены с установленными ключами администратора, wipe (очистка), freeze (заморозка) и pause (пауза), что подрывает это предположение. Большинство коллекционеров также могут не осознавать последствий наличия этих ключей у токенов, которые они приобрели. Поэтому понимание того, какие ключи присутствуют в конкретном токене, необходимо каждому, кто оценивает его надежность.
Источники:
Hedera: NFT-токены Token Service — ключи, крайние случаи
Обзор Hedera Token Service
HIP-540: Изменение или удаление существующих ключей у токена
