Что путь подписи TET может и чего не может делать
Доверие к продукту стоит оценивать по опубликованным проверяемым механизмам, а не по широким заверениям. Эта страница точно описывает, что путь подписи внутри продукта может подписать, а что — нет, как это обеспечено и — не менее важно — что мы проверили, а что пока нет.
Путь автопродажи ограничен делегированием ресурса
Путь автопродажи внутри продукта создаёт только транзакции DelegateResourceContract и UnDelegateResourceContract. При подключении продавца принимается только bitmap активного разрешения ровно с этими двумя операциями; более широкое разрешение отклоняется. Внутри продукта подписывающий сервис автопродажи независимо от этого отвергает любой другой тип контракта. Это проверки кода и выданного разрешения, но сами по себе они не доказывают, как TRON обработает транзакцию, подписанную напрямую ограниченным ключом.
Что платформа может подписать и почему этот список короткий
В коде определены четыре независимо настраиваемые роли подписи: релиз эскроу, выплаты продавцам, делегирование автопродажи и операционное финансирование. У каждой роли есть список типов транзакций, которые она вправе подписать, и объединение всех четырёх списков состоит ровно из трёх типов — TransferContract, DelegateResourceContract и UnDelegateResourceContract. Больше в них нет ничего. Тип транзакции политика читает из самих подписываемых байт, а сопутствующий JSON не читается вообще: второго представления, которое могло бы разойтись с первым, просто нет, и подменять нечего.
Заморозка и изменение прав не входят в путь подписи
FreezeBalanceV2Contract не входит ни в один из четырёх списков. Как и UnfreezeBalanceV2Contract, FreezeBalanceContract, WithdrawExpireUnfreezeContract и AccountPermissionUpdateContract — последний важен, потому что переписывание прав аккаунта — ещё один путь к тому же результату. Транзакция, типа которой нет в списке роли, отклоняется до всего остального, а незнакомый тип не совпадает ни с одной записью и отвергается по умолчанию, а не разрешается по умолчанию. Поэтому путь подписи в текущем продукте не может выдать подпись ни для одной из этих операций. Это гарантия конкретного пути в коде, а не утверждение о прямом использовании сырого ключа или принудительном ограничении на уровне сети. Чтобы изменить её, потребуется осознанно править код и добавить тип в политику роли.
Как проверить это самому
Наборы контрактов — две константы в `security/signer.py`, политики по ролям — в `security/policies.py`. И то и другое читается за пару минут, а сама проверка это обычная проверка вхождения в множество: без конфигурации, без рантайм-флага, без окружения, в котором список окажется длиннее. Если нужно убедиться, что полученная делегация именно та, за которую вы заплатили, транзакция делегирования лежит в блокчейне и называет владельца, получателя и срок блокировки.
Что это доказывает, а что нет
Это доказывает, на что поставит подпись путь внутри продукта. Такое утверждение уже, чем гарантия относительно любого возможного использования ключа или транзакции, и разницу стоит проговорить точно. Мы пока не доказали, что сеть TRON отклонит перевод TRX, расстейк или другую трату, подписанную напрямую ключом, в активном разрешении которого есть только две операции делегирования; для этого нужен пополненный аккаунт Nile. SIGNER_ARMED — конфигурация окружения, а не постоянный факт о продукте: при значении false подписывающий сервис отказывается загружать непустой ключ. Эта страница не утверждает, какое значение установлено в каком-либо текущем окружении. Мы предпочитаем опубликовать более узкое утверждение, которое можем обосновать, чем более широкое, которое пришлось бы принимать на веру.
Пополнение требует личного адреса; выводы и выплаты продавцам недоступны
Пополнение покупателя доступно только когда ответ GET /v1/balance или кабинет показывает настроенный личный адрес пополнения платформы. В путь пополнения входит лишь явный перевод именно на показанный адрес; подходящий перевод не ниже настроенного минимума зачисляется после требуемого числа подтверждений. Если адрес не показан ни там, ни там, ничего не отправляйте. Само подключение TronLink не переводит средства, а адрес кошелька для входа не является адресом пополнения. Вывод средств покупателем и исполнение выплат продавцам по-прежнему недоступны. Стейк продавца в автопродаже не вносится в TET, а подписывающий сервис этой функции остаётся ограничен делегированием и отзывом ресурса.
Частые вопросы
Как оценить, стоит ли доверять TET?
Оценивайте опубликованные механизмы, границы их действия и прямо названные пробелы, а не широкие заверения. Политику подписи и наборы контрактов можно проверить в коде, транзакции делегирования — в блокчейне, а сетевое свойство, для доказательства которого всё ещё нужен пополненный аккаунт Nile, указано прямо.
Что бот автопродажи реально может сделать с моим аккаунтом?
Продукт запрашивает и принимает bitmap разрешения только с делегированием и отзывом ресурса, а путь подписи автопродажи отвергает любой другой тип контракта. Мы пока не продемонстрировали на пополненном аккаунте Nile, что сама сеть отклоняет перевод, расстейк или другую трату, подписанную напрямую этим ограниченным ключом. Если отозвать обязательную операцию, бот встанет на паузу и вы выйдете из книги, а не начнёте копить провальные заполнения.
Что будет, если один из ваших ключей украдут?
Проверяемая гарантия относится к пути подписи внутри продукта: каждая роль ограничена разрешёнными типами транзакций и лимитами. Подписывающий сервис автопродажи принимает только делегирование и отзыв ресурса, а TransferContract и контракты расстейка отклоняет до подписи. Прямое использование сырого ключа не покрывается этой гарантией кода, а ограничение на уровне сети остаётся недоказанным. В текущем продукте нет исполнения выплат или выводов; доход по завершённым сделкам остаётся ожидающим.
Перемещает ли использование TET мои TRX на внутренний баланс?
Само подключение TronLink не переводит средства, а адрес кошелька для входа не является адресом пополнения. Покупатель может пополнить баланс только когда ответ GET /v1/balance или кабинет показывает настроенный личный адрес пополнения платформы и покупатель отдельно переводит средства именно на показанный адрес. Подходящий перевод не ниже настроенного минимума зачисляется после требуемого числа подтверждений; если адрес не показан ни там, ни там, ничего не отправляйте. Вывод средств покупателем и исполнение выплат продавцам по-прежнему недоступны. Стейк продавца в автопродаже не вносится в TET, а подписывающий сервис этой функции остаётся ограничен делегированием и отзывом ресурса.