Все статьи
Гайды

Когда стоит сохранить полномочие заморозки токена Solana

Когда эмитенту стоит сохранить полномочие заморозки токена Solana, когда его отозвать и почему замороженные к моменту отзыва счета не разморозить уже никогда.

8 минут чтения J Tools Editorial
Стальная панель: слева под поднятой прозрачной крышкой светится оранжевый рычаг, справа два тёмных переключателя. Полномочие заморозки ещё взведено

Самый громкий совет при запуске токена на Solana звучит так: отзовите полномочие заморозки в первый же день, иначе сообществу не за что вам доверять. Для чистого мемкоина совет верный. Для любого другого проекта он означает выбросить единственный аварийный тормоз, который есть у классического SPL-токена.

Поэтому спорить стоит о другом: когда и ради кого сохранить полномочие заморозки, а когда от него избавиться. Ниже разобрано, что заморозка умеет на самом деле, где она нужна и где мешает. И один факт, без которого решение неполное: счета, замороженные в момент отзыва, остаются замороженными навсегда.

Что делает полномочие заморозки

Три стеклянных цилиндра с подписями ACTIVE, FROZEN и THAW: активный токен-счёт с золотыми частицами, счёт во льду и счёт, который трескается при разморозке

Полномочие заморозки (freeze authority) это поле в mint-аккаунте токена. Пока в нём записан адрес, владелец этого адреса может заморозить любой токен-счёт этого токена, а потом разморозить его. Выключатель работает в обе стороны.

Замороженный токен-счёт сохраняет владельца, mint и баланс, но не может получать, отправлять или сжигать токены, пока его не разморозят. Так это описывает документация Solana о заморозке токен-счёта. Баланс по-прежнему принадлежит владельцу, просто он никуда не двигается.

Главная деталь: заморозка действует на один токен-счёт за инструкцию, то есть на счёт держателя для одного конкретного токена. Кошелёк целиком она не блокирует, SOL и другие токены держателя остаются как были. Чтобы остановить одного злоумышленника, хватает одной заморозки.

Остановить все переводы одним полномочием заморозки можно лишь так: заморозить счёт каждого держателя, включая хранилища пулов ликвидности. Пул ликвидности держит токены на собственных токен-счетах, поэтому такая мера замораживает сам рынок. Токену на Token-2022 для этого можно дать отдельную роль: расширение pausable вводит полномочие паузы, которое приостанавливает переводы, выпуск и сжигание сразу для всего mint. Это другое полномочие, не полномочие заморозки.

Отозвать полномочие значит записать в поле пустое значение. Подписывает текущий владелец полномочия, действие постоянное, и ни одна инструкция не вернёт поле обратно. Полномочие выпуска (новые токены), полномочие заморозки и полномочие обновления метаданных (имя, символ, картинка) это три отдельные роли, и каждая отзывается сама по себе. Как отзывают каждую из них, показано в руководстве, как отозвать полномочия токена Solana.

Три причины сохранить полномочие заморозки

Реакция на взлом

Ломается мост, ошибается ценовой оракул или сбоит контракт хранилища, и у атакующего на руках оказывается крупная сумма вашего токена. Если полномочие у вас, вы замораживаете токен-счёт атакующего, и всё, что на нём лежит, остаётся на месте. Появляется время связаться с биржами и пострадавшими командами. Предел у этого инструмента простой: заморозка держит лишь то, что ещё не ушло со счёта. Уже отправленное дальше она не вернёт.

Крупные стейблкоины здесь хороший ориентир. У mint-аккаунтов USDC, USDT и PYUSD в сети Solana полномочие заморозки задано, это видно прямо в блокчейне. Опубликованные условия Circle и Tether оставляют за эмитентом право замораживать токены, например когда этого требует закон.

Комплаенс

Для токенов реальных активов, ценных бумаг с ограничением по странам и раздач с проверкой личности может понадобиться эмитент, способный действовать по санкционному списку или решению суда. У классического SPL-токена главный рычаг для этого в сети как раз полномочие заморозки. Token-2022 добавляет другие: счета, которые создаются замороженными и ждут, пока полномочие заморозки их разморозит (default account state), постоянного делегата (permanent delegate) и transfer hook. Чем отличаются два стандарта, разобрано в статье Token-2022 или SPL: что выбрать до выпуска.

Если ваш выпуск опирается на исполнение таких требований, отзыв этот рычаг убирает, и тогда разумнее сохранить полномочие заморозки. Здесь описан технический механизм, а не юридическая консультация.

Блокировка на время вестинга

Эмитент может заморозить счёт с долей команды или инвесторов до окончания клиффа. Такой замок держится на слове эмитента: разморозить счёт он может в любой момент, и никакой таймер ему не мешает. Если покупатели должны проверить график сами, нужен вестинг-контракт, который выдаёт токены по расписанию.

Три причины от него отказаться

Сигнал доверия. Покупатели и сервисы проверки токенов смотрят на полномочие заморозки. На мемкоине живое полномочие читается как ловушка, ведь с замороженного счёта продать нельзя. Откуда этот страх, объясняет статья что такое ханипот в крипте. Токену без планов развития, без аудита и без требований комплаенса держать полномочие незачем.

Листинг на биржах. Политики бирж различаются. Прежде чем строить предположения в ту или другую сторону, спросите нужную биржу напрямую.

Меньше мишеней. Каждое полномочие, которое вы держите, это ключ, который может утечь или обернуться против ваших же держателей. Когда нужда в нём прошла, отзыв убирает эту мишень.

Матрица решений: четыре сценария

Что выбрать, сохранить полномочие заморозки или отказаться от него, подскажет тип проекта. Найдите свой. Если ни одна строка не подходит точно, возьмите ближайшую и запишите, чем вы от неё отличаетесь.

Тип проектаПо умолчаниюЧто запускает шаг
Чистый мемкоин без планов развитияОтозватьПри создании или сразу после запуска
Утилитарный токен с активной командойСохранить, потом отозватьАудит пройден, казна на мультиподписи, после запуска прошёл спокойный период без инцидентов
Токен реального актива или с ограничением по юрисдикцииСохранитьОпубликовать обоснование там, где его прочтут держатели
Стейблкоин или институциональный активСохранитьЗакреплено в политике эмитента

Привязывайте отзыв к событию: аудит закончен, мультиподпись работает, первый крупный листинг позади. Дата в календаре здесь плохой ориентир. Мемкоину проще всего решить всё при выпуске: в конструкторе токенов Solana есть переключатели отзыва полномочий. В остальных проектах каждое полномочие отзывают на своём этапе.

Чего заморозка не делает

Она не останавливает новый выпуск. Новые токены выпускает полномочие выпуска, а это отдельная роль. У токена одно из двух может быть отозвано, а другое оставаться в силе. Выпуск закрывают через отзыв полномочия выпуска, а как выбрать модель эмиссии, разобрано в статье эмиссия токена Solana: какую модель выбрать.

Она не меняет предложение и балансы. Замороженные токены остаются в предложении и на счёте держателя.

К монетам Pump.fun она неприменима. Каждая монета Pump.fun создаётся без полномочия заморозки, и на бондинг-кривой, и после переезда на PumpSwap. Отзывать там нечего, и заморозить её счета никто не может. Куда монета переезжает после кривой, рассказывает статья что такое PumpSwap, биржа Pump.fun.

Отзыв ничего не размораживает. Счета, замороженные в момент отзыва, остаются замороженными навсегда, об этом прямо сказано в документации программы SPL Token. Сначала разморозьте, потом отзывайте.

Заморозка, разморозка и отзыв в j.tools

Рука тянет светящийся рычаг на щитке рядом с тяжёлой стальной дверью, а сквозь щель в двери уже вырываются янтарные осколки: заморозка держит лишь то, что не ушло

Заморозка токен-счетов загружает держателей токена по адресу mint. Кошельки, которые трогать нельзя, вы защищаете белым списком на время сессии, отмечаете нужные строки и замораживаете их пачкой. У каждой строки свой статус, неудачные можно повторить. Страница показывает полномочие заморозки этого mint и работает, только когда подключённый кошелёк и есть это полномочие.

Разморозка токен-счетов загружает только замороженные строки этого mint и размораживает те, что вы выбрали.

На странице отзыва полномочия заморозки вы вставляете адрес mint. Страница читает текущее полномочие и показывает его, ещё до подписи сообщает, если оно уже отозвано или принадлежит другому кошельку, предупреждает о необратимости и отзывает одной транзакцией. Комиссию платформы страница показывает до подписи.

Инструмент, делающий токен неизменяемым, проверяет полномочия выпуска, заморозки и метаданных и навсегда снимает оставшиеся одной транзакцией. Полномочие заморозки он тоже отзывает, так что правило «сначала разморозить» действует и здесь.

Снимок держателей токена помечает как разработчика того держателя, который владеет полномочием выпуска или заморозки либо создал токен. Само поле полномочия снимок не показывает: его видно на странице отзыва заморозки или в обозревателе блоков.

Перед отзывом

  1. Найдите свою строку в матрице выше.
  2. Разморозьте каждый счёт, который замораживали и который должен работать дальше: отзыв оставит замороженные счета замороженными навсегда.
  3. Проверьте, какой кошелёк держит полномочие. Страница отзыва заморозки его показывает.
  4. Решите отдельно, что делать с полномочиями выпуска и метаданных.
  5. Затем отзывайте. Пошагово это описано в руководстве по отзыву полномочий токена Solana.

Отмены нет. Если вам ещё может понадобиться реакция на взлом, рычаг комплаенса или блокировка на время вестинга, лучше сохранить полномочие заморозки и записать, почему вы так решили.

Типичные ошибки

  1. Отзыв ради моды. Отозвали, потому что так сделал последний громкий запуск. Решение должно следовать из вашего проекта.
  2. Полномочие на одном горячем кошельке. Если полномочие остаётся, держите его за мультиподписью: владельцем любого полномочия SPL Token может быть мультиподпись. Страницы j.tools при этом работают, только когда полномочием владеет сам подключённый кошелёк.
  3. Путаница с полномочием выпуска. В публичных сообщениях эти роли смешивают, хотя живут они отдельно.
  4. Вера в то, что заморозка останавливает весь токен. Она останавливает по одному счёту за раз. Пауза всего mint это отдельная роль Token-2022.
  5. Отзыв при замороженных счетах. Они так и останутся замороженными.

Частые вопросы о полномочии заморозки

Безопасно ли сохранить полномочие заморозки?

Да, если ключ защищён, лучше всего мультиподписью, и у команды есть настоящая причина его держать. Опасен один горячий ключ, который может утечь и обернуться против ваших держателей. Для примера: mint-аккаунты USDC, USDT и PYUSD в сети Solana полномочие заморозки сохраняют.

Доверяют ли покупатели токену с живым полномочием заморозки?

На мемкоине живое полномочие читается как красный флаг и может само по себе затормозить запуск. У токенов реальных активов и у выпусков с требованиями комплаенса внимательные покупатели читают опубликованное обоснование целиком, одного поля им мало. Что ещё проверяют перед покупкой, собрано в статье как проверить токен Solana на скам.

Можно ли отозвать полномочие позже?

Да, в любой момент, пока оно у вас. Решать всё в день запуска никто не заставляет. Обратно это не работает: когда поле пустое, полномочие уже не вернуть.

Что происходит с замороженными счетами после отзыва?

Они остаются замороженными навсегда, потому что разморозить их больше некому. Поэтому сначала разморозьте всё, что должно работать, и только потом отзывайте.

Можно ли заморозить токен Pump.fun?

Нет. Монеты Pump.fun создаются без полномочия заморозки, и на бондинг-кривой, и после переезда на PumpSwap. Отзывать там тоже нечего.

Решение, сохранить полномочие заморозки или отозвать его, операционное. Запишите обоснование там, где его прочтут держатели, и возвращайтесь к нему на настоящих вехах проекта. Что ещё сделать после старта, собрано в чек-листе что делать после запуска токена на Solana.

J
Автор
J Tools Editorial

Материал команды J Tools.

Все материалы автора J Tools Editorial →

Похожие статьи