Перейти к содержанию

Безопасность

Ваши ключи. Структурно, а не на словах.

«Некастодиальный» легко заявить и труднее построить. Эта страница — конкретная версия: где живёт ключ, что passkey может и чего не может, и одно свойство, которое определяет всё остальное.

Линия, которая решает всё

Путь восстановления и есть граница кастодиальности

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

Честное следствие, сказанное до того, как придут деньги, а не после инцидента: если потерять и сид-фразу, и секрет от резервной копии, доступ не восстановит никто. Ни вы, ни мы, ни поддержка.

Ваши ключи. Структурно, а не на словах.

  • Аппаратное хранилище

    Ключ создаётся на устройстве и хранится в Keychain на iOS или StrongBox на Android. Он никуда не отправляется — ни в логи, ни в отчёты о сбоях, ни в аналитику.

  • Биометрия на каждой подписи

    Face ID или Touch ID разблокирует ключ ровно на одну подпись. На экране подписи всегда видны получатель, сумма, сеть и стоимость — и для адреса, которому вы ещё не платили, режима «в одно касание» нет.

  • Подпись в браузере — по вашему выбору

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

  • Проверка до подготовки транзакции

    Получатели сверяются с публичными санкционными списками ЕС и OFAC до того, как транзакция подготовлена. При совпадении мы её не готовим и не отправляем: заморозить мы ничего не можем, поэтому отказ в содействии — единственный рычаг, и это записанная процедура, а не импровизация.

Деталь, ради которой стоит абзац

Passkey аутентифицирует. Он не подписывает.

WebAuthn подписывает по P-256. Аккаунты Tron — это secp256k1, а TON — Ed25519, и ни одна из этих сетей не проверяет P-256 для обычного аккаунта. Поэтому passkey может открыть сессию и — в браузере — разблокировать уже находящееся там хранилище ключа, но не может сам быть ключом, который двигает средства в этих сетях.

Passkey аутентифицирует. Он не подписывает.
WebAuthn / passkeyP-256 · secp256r1
Tronsecp256k1
TONEd25519

Это важно при сравнении продуктов. Всё, что рекламирует «passkey и никакой сид-фразы» в этих сетях, где-то дублирует ключевой материал, а на практике это доля, лежащая на сервере. Это другое утверждение, чем наше, и разница ровно в том самом пути восстановления.

Начало работы

Без церемонии с сид-фразой

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

Ручной экспорт сид-фразы всегда доступен в настройках и никогда не является единственным путём.

Вопросы, которые задаёт служба безопасности

Если внутреннее решение по этому продукту принимаете вы — задайте их напрямую.

Написать в Telegram