Перевести предмет между кошельками через браузерное расширение — операция в два окна. Первое окно рисует сайт, и доверять ему нельзя: страница показывает любой текст независимо от того, что уходит на подпись. Второе окно рисует расширение, и в нём есть одно неподдельное поле — домен запросившего сайта. Сверять нужно его, тип запроса и аргументы. Отключение сайта разрешений в сети не отзывает.
Подключение сайта к расширению — это выданное домену право читать ваш адрес и присылать вам запросы на подпись; само по себе оно ничего не переводит и ничем не распоряжается, но открывает канал, по которому запрос может прийти в любой момент.
Что означает подключение сайта к расширению
Подключение часто понимают как вход в личный кабинет. Сходство обманчиво. Пароля нет. Сессии на стороне сайта нет. Есть выданное домену право обращаться к вам с запросами, и это право не истекает само: пока домен числится подключённым, запрос может прийти и через месяц после единственного визита на страницу.
Право это одностороннее: сайт спрашивает, вы подтверждаете. Без вашего подтверждения ни одна операция не состоится. Опасность не в подключении, а в том, что подтверждают, не читая второе окно.
У расширения есть встроенные средства защиты, описанные в стандарте подписи типизированных данных. EIP-712 создан 12 сентября 2017 года, статус Final. Среди полей домена подписи — идентификатор цепочки, причём стандарт предписывает клиенту отказывать в подписи, если идентификатор не совпадает с активной сетью, и адрес проверяющего контракта, по которому клиент вправе вести защиту от подделки под конкретный контракт. Всего полей домена пять: имя, версия, идентификатор цепочки, адрес контракта и соль.
Из редакционной практики: читатели почти не смотрят в это окно дальше кнопки подтверждения, хотя именно в нём собраны все данные, по которым операцию можно опознать — домен, тип запроса, адрес контракта и разобранные аргументы вызова. Страница рядом может утверждать что угодно.
Как перевести предмет между кошельками через браузерное расширение: три типа запросов
Запросы бывают разной природы. Путают их постоянно.
| Тип запроса | Что в окне расширения | Плата сети | След в сети сразу |
|---|---|---|---|
| Транзакция перевода | Адрес контракта коллекции, нулевая сумма, разобранный вызов с получателем и номером | Есть | Есть: смена владельца в журнале |
| Транзакция выдачи прав | Адрес контракта коллекции и оператор, которому выдаются права; поля количества нет | Есть | Есть: событие выдачи прав |
| Подпись обычного сообщения | Текст сообщения как есть, иногда нечитаемый | Нет | Нет |
| Подпись типизированных данных | Домен подписи и поля структуры: предмет, цена, срок действия | Нет | Нет: подпись хранится у сайта и предъявляется позже |
| Запрос смены сети | Название и идентификатор другой цепочки | Нет | Нет, но меняет, в какой сети пойдут следующие запросы |
Вторая строка — главная ловушка сегмента. У разрешения на распоряжение монетами в окне видна сумма, и несоразмерную сумму замечают даже невнимательные. У разрешения на коллекцию суммы нет вовсе. Сравнивать не с чем. Охват при этом полный.

Отключить сайт в расширении и отозвать разрешение в сети — два разных действия. Отключение убирает у домена право присылать запросы и ничего не меняет в контракте коллекции: выданный ранее оператор остаётся оператором и может забрать предметы без вашего участия. Отзыв — это отдельная транзакция с платой сети. И ещё одна подробность из стандарта: контракт обязан допускать несколько операторов у одного владельца, поэтому отзыв прав у одного адреса не отзывает прав у остальных.
Издержки: комиссии, роялти, газ — и бесплатные подписи
Расходы делятся на две группы. Видимые и отложенные.
- Перевод оплачивается платой сети. Это единственная строка, которую окно расширения показывает заранее.
- Выдача прав оператору оплачивается отдельно, отзыв прав — тоже. Операция из трёх подписей даёт три платы.
- Подписи сообщений и типизированных данных платы не требуют. Отсюда и ощущение бесплатности, за которым скрывается отложенный расчёт.
- Тариф торгового сервиса и роялти коллекции при переводе между своими адресами не возникают: ERC-2981 (создан 15 сентября 2020 года, идентификатор интерфейса 0x2a55205a) называет выплату роялти добровольной, поскольку перевод между кошельками сделкой не является.
- Смена сети по запросу сайта бесплатна, но уводит следующие операции в другую цепочку, где у знакомой коллекции может оказаться другой контракт.
Из чего набирается итоговая сумма по трём транзакциям, разобрано в тексте о том, как перевести предмет между кошельками и понять структуру комиссий. Удержания на стороне сервиса показывает материал о том, как разобраться в комиссиях площадки.
Пошаговый сценарий перевода и отзыва доступа
- Откройте страницу коллекции по заранее сохранённой закладке, а не по ссылке из переписки или из поисковой выдачи. Домен — первое, что подделывают.
- Перед подключением выпишите адрес контракта и номер экземпляра. Эти две величины понадобятся для сверки в окне расширения.
- Подключите сайт и выберите в расширении тот адрес, с которого уходит предмет. Если адресов несколько, убедитесь, что активен нужный: запрос соберётся под активный.
- Соберите перевод и в окне расширения сверьте четыре поля: домен сайта, тип запроса, адрес контракта и аргументы с получателем и номером. Домен в этом окне подставляет браузер, и страница его не меняет.
- Отклоните запрос, если в окне нет получателя предмета. Запрос без получателя переводом не является, чем бы его ни называла страница.
- После подтверждения отключите сайт в расширении и отдельно проверьте, не остался ли у кого-то оператор на эту коллекцию. Права отзываются транзакцией, а не отключением.
- Через сутки откройте журнал транзакции и сверьте номер предмета в событии смены владельца с выписанным.
Шестой шаг пропускают почти все. Он же единственный, который закрывает доступ по-настоящему: пока оператор числится в контракте, он вправе забрать любой экземпляр этой коллекции с вашего адреса, и ни закрытая вкладка, ни удалённое расширение этому не помешают.
Риски: подмена интерфейса страницы и живые разрешения
Схемы здесь строятся на одном зазоре. Страница пишет одно, запрос содержит другое.
- Кнопка «перевести на свой второй кошелёк», отправляющая запрос на выдачу прав оператору.
- Всплывающее окно, нарисованное самой страницей и похожее на окно расширения: настоящее окно рисует браузер вне области страницы.
- Копия расширения из поисковой выдачи или из сторонней витрины дополнений.
- Запрос смены сети перед переводом: та же коллекция по названию, другой контракт по адресу.
- Подпись типизированных данных без срока действия: предъявить её могут через месяцы.
- «Отзыв доступа» на сайте, который сам же и просил права: отзыв делается на стороне контракта, а не кнопкой на странице.
Вопрос о том, кому и какие права вы раздаёте в сети, шире коллекционного рынка: как устроен контроль над собственным цифровым следом, разбирает материал про децентрализованные социальные графы и возвращение контроля над цифровым следом. А типовой разговор, в котором подпись выпрашивают под видом бесплатного подарка, разобран в тексте о том, как участвовать в бесплатной раздаче предметов.
Материалы по теме:
- Как перевести предмет между кошельками и понять структуру комиссий — сколько плат даёт операция из трёх подписей.
- Как разобраться в комиссиях площадки — где возникают удержания сервиса.
- Как участвовать в бесплатной раздаче предметов — как выпрашивают подпись под видом подарка.
- Децентрализованные социальные графы — контроль над правами, выданными сервисам.
Итог
Расширение — не кабинет и не хранилище доверия, а посредник, который показывает запрос и ждёт решения. Страница сайта в этой схеме не источник сведений, а оформление, и расхождение между её текстом и содержимым запроса — нормальный сценарий атаки, а не редкость. Отключение домена и отзыв прав в контракте — разные операции, и вторая стоит денег.
Первоисточники откройте сами. Поля домена подписи, предписание отказывать в подписи при несовпадении сети и возможность защиты по адресу проверяющего контракта — в тексте стандарта EIP-712. Требование допускать несколько операторов у одного владельца и устройство выдачи прав — в тексте стандарта ERC-721. Данные сверены на 17 октября 2026 года. Что проверить не удалось: единого стандарта на то, как расширения оформляют запрос выдачи прав на коллекцию, нет, формулировки у поставщиков разные, и опознавать такой запрос приходится по отсутствию получателя предмета в аргументах.
Частые вопросы
Я отключил сайт в расширении. Доступ к предметам закрыт?
Нет. Отключение убирает у домена право присылать вам запросы и не меняет записи в контракте коллекции. Если ранее вы выдали оператора, он остаётся оператором и распоряжается предметами без вашего участия. Закрывается это отдельной транзакцией отзыва прав, с платой сети, и делать её нужно для каждого оператора по отдельности.
Как отличить запрос перевода от запроса выдачи прав?
По наличию получателя предмета в аргументах. У перевода есть адрес, которому уходит экземпляр, и номер этого экземпляра. У выдачи прав получателя предмета нет: есть оператор и признак включения прав, а поля количества не бывает вовсе. Любой текст на странице при этом значения не имеет.
Что опаснее — транзакция или бесплатная подпись?
Зависит от содержания, но бесплатная подпись коварнее. Она не стоит денег, не появляется в сети и может быть предъявлена спустя месяцы, когда вы о ней забыли. Поэтому в окне типизированных данных смотрят на срок действия и на предмет: подпись без срока действует, пока существует условие её исполнения.
Сайт просит сменить сеть перед переводом. Это нормально?
Иногда да, если коллекция живёт в другой цепочке. Проверка одна: после смены сети сверьте адрес контракта с тем, который вы выписали со страницы предмета. Название и логотип коллекции повторяются в разных сетях без ограничений, адрес контракта — нет. Несовпадение адреса означает другой предмет.
Можно ли доверять окну, которое выглядит как окно расширения?
Только тому, которое браузер рисует вне области страницы. Страница способна нарисовать похожее окно внутри себя, с тем же оформлением и кнопками. Признак подлинного — домен запросившего сайта в заголовке запроса, подставленный браузером. Если домен не виден или отличается от адресной строки, закрывайте окно и начинайте заново из закладки.
Вердикт
Браузерное расширение переносит ответственность туда, где её меньше всего ждут: не на ключ и не на сеть, а на чтение одного небольшого окна. Коллекционные предметы делают эту ответственность острее, потому что разрешение на серию выдаётся без числа, а значит и без подсказки о масштабе. Редакционное правило простое и редко выполняемое: разрешения, выданные площадкам, стоит пересматривать раз в месяц и отзывать те, которыми вы не пользуетесь. Отключённый сайт и отозванные права — разные состояния, и второе достигается только транзакцией.
Разборы операций с коллекционными предметами и предупреждения о свежих схемах выходят в нашем Telegram-канале Cryptium.
Обсуждение
Добавить комментарий