Рады видеть в CoinDropster
Введите новый пароль
Задайте новый пароль
Введите новый пароль для вашего аккаунта.
Все активные сессии будут завершены.
Нажимая «Войти», вы подтверждаете, что ознакомились и соглашаетесь с Условиями использования CoinDropster, Политикой конфиденциальности и Отказом от ответственности
Что значит подписать сообщение в кошельке: транзакция и подпись
Что значит подписать сообщение в кошельке: чем подпись отличается от транзакции, что такое permit, Permit2 и setApprovalForAll и как читать окно подписи.
Что значит подписать сообщение в кошельке — один из самых важных вопросов безопасности для тех, кто участвует в аирдропах, потому что многие окна подтверждения выглядят безобидно и не требуют газа, а последствия у них могут быть такими же, как у перевода средств. Эта статья объясняет, чем подпись отличается от транзакции, какие виды подписей бывают и на что смотреть до нажатия кнопки.
Материал носит образовательный характер и не является финансовым или юридическим советом. Он не гарантирует защиту от потери средств: внимательность снижает риск, но не устраняет его.
Транзакция и подпись: в чём разница
Кошелёк умеет делать две принципиально разные вещи. Их легко перепутать, потому что в обоих случаях открывается окно с кнопкой «Подтвердить».
- Транзакция — это операция, которая отправляется в сеть, изменяет состояние блокчейна и требует комиссии (газа). Перевод, свап, апрув, клейм — всё это транзакции. Результат виден в истории кошелька и в обозревателе блоков.
- Подпись сообщения — это криптографическое доказательство того, что ты контролируешь адрес и согласен с конкретным текстом или набором данных. Сама по себе она ничего не отправляет в сеть и газа не стоит.
Отсутствие газа создаёт ложное ощущение безопасности. Подпись — это не действие, а согласие, и это согласие может быть предъявлено позже. Если подписанные данные означают «разрешаю этому адресу списать мои токены», то любой, у кого есть эта подпись, может отправить её в сеть сам и заплатить газ за себя. Токены уйдут с твоего адреса, хотя ты ни разу не платил комиссию и не видел транзакции в своей истории.
Виды подписей, которые встречаются чаще всего
- personal_sign. Подпись простого текста. Так работает вход на сайт через кошелёк: тебе показывают читаемое сообщение, например с названием сайта и одноразовым кодом. Обычно это безопасно, пока текст понятен и не содержит слов о разрешениях, переводах или передаче прав.
- Структурированные данные (EIP-712). Кошелёк показывает не одну строку, а набор полей: кто, что, сколько, до какого срока. Это стандартный способ подписывать ордера на торговых площадках и разрешения на списание. Читать такие окна сложнее, но именно в полях и содержится смысл.
- Permit. Подпись по стандарту EIP-2612 позволяет разрешить адресу тратить твой токен без отдельной транзакции апрува. Поддерживают его не все токены. Поля, которые нужно проверить: spender (кому), value (сколько) и deadline (до какого времени).
- Permit2. Общий контракт для разрешений, который используют некоторые приложения. Ты один раз даёшь ему апрув, а дальше конкретные лимиты задаются подписями. Удобно, но означает, что подпись с широкими параметрами работает как полноценный апрув.
- setApprovalForAll. Это не подпись, а транзакция, но её часто показывают в похожем окне. Она даёт указанному адресу право перемещать все NFT выбранной коллекции, а не один. Срока и лимита у неё нет, пока ты сам её не отзовёшь.
- Слепая подпись. Ситуация, когда кошелёк показывает не расшифрованные поля, а длинную шестнадцатеричную строку или хеш. Прочитать смысл невозможно, и ты соглашаешься, не зная, на что именно.
Как читать окно подписи
Прежде чем подтверждать, пройди по короткому списку. Он занимает полминуты и закрывает большую часть типовых ловушек.
- Откуда запрос. Кошелёк показывает домен сайта. Он должен совпадать с тем, куда ты шёл осознанно. Если ты попал сюда по ссылке из чата или рекламы, сначала прочитай статью о поддельных сайтах клейма.
- Что за действие. Вход, ордер, разрешение на токен, разрешение на NFT? Если окно не называет действие понятными словами, это повод остановиться.
- Кто получатель. Поле spender, operator или to. Незнакомый адрес без объяснения, зачем он нужен, — плохой знак.
- Какой объём. Конкретная сумма или «неограниченно»? Для токена бесконечное значение означает, что адрес сможет забрать весь баланс этого токена сейчас и в будущем. Для NFT аналог — «все токены коллекции».
- Какой срок. Поле deadline или expiration. Разрешение без срока или со сроком в далёком будущем дольше остаётся опасным.
- Можно ли прочитать. Если вместо полей показан набор байтов, не подписывай. Многие аппаратные кошельки по умолчанию отключают такие подписи, и включать эту настройку без крайней необходимости не стоит.
Дополнительное правило: ни одна легитимная подпись не просит ввести или показать seed-фразу. Это не подпись, а кража. Как хранить фразу и ключи, разобрано в статье о хранении seed-фразы.
Если уже подписал, и что делать заранее
Транзакционный апрув остаётся действующим, пока ты его не отзовёшь, и его можно увидеть в списке разрешений кошелька или специального сервиса. Как просматривать и отзывать такие разрешения, описано в статье об отзыве апрувов токенов. С подписями сложнее: подписанный permit не виден в блокчейне, пока им не воспользовались, и его срок действия определяется полем deadline. Поэтому лучшая защита — не подписывать лишнего.
Практические привычки, которые снижают риск:
- держи для экспериментов с новыми проектами отдельный кошелёк с небольшим балансом, как описано в статье о настройке кошелька для аирдропов;
- не открывай ссылки на клейм из личных сообщений, комментариев и рекламы, а заходи на сайт проекта самостоятельно;
- если сомневаешься, отклони запрос: отказ ничего не стоит, а повторить подпись можно в любой момент;
- периодически проверяй список активных разрешений и отзывай те, которыми не пользуешься.
В каталоге CoinDropster у каждого проекта есть страница со статусом и ключевыми фактами, а смена статуса — Potential, Confirmed, Snapshot, Verification, Reward available или Distributed — отслеживается. Это помогает понимать, на какой стадии проект и можно ли вообще ожидать запрос на клейм: если статус не предполагает раздачи, просьба «срочно подтвердить кошелёк» вызывает вопросы. Чек-листы в приложении помогают держать дедлайны под рукой, чтобы не действовать в спешке. Смотреть отслеживаемые аирдропы →