А вас же тоже бесят мнемоники?
Мне они всегда не нравились, цифровые хранилища для них https://thehackernews.com/2025/12/trust-wallet-chrome-extension-hack.html, физические и потерять можно, а кроме селф-кастоди я ни во что не верю. В эти новогодние праздники я решил с этим разобраться.
В блокчейнах с https://www.binance.com/en/academy/glossary/externally-owned-account-eoa моделью у пользователей особо нет выбора - кошельки и логика их подписей заданы внешне, на уровне протокола, и у разработчиков нет возможности изменить их ончейн логику.
Однако в Тоне кошельки - смарт контракты, и это означает что мы можем контролировать их поведение. Исторически мы пошли самым проторенным путем - те же самые bip сидфразы и мнемоники.
Я считаю, что можно лучше и интереснее, поэтому представляю вам новый тип кошельков на Тоне - Telegram Wallet.
В одном из недавних https://core.telegram.org/bots/webapps#validating-data-for-third-party-use Телеграм без анонсов добавили новый вид проверки валидности данных в Тма - через публичную криптографию, Ed25519 подписи, которые как раз нативно поддержаны в TVM.
Я написал смарт контракт для кошелька, который работает на Телеграм подписях вместо подписей от мнемоники юзера, таким образом создавая новую секьюрити модель:
⁃ Кошелек без мнемоники, для подтверждения транзанкции нужно зайти в Телеграм и подписать через Тма
⁃ Сохранен весь функционал V5 - https://tonkeeper.com/en/article/how-tonkeeper-brings-gasless, плагины, 255 сообщений за транзу
⁃ Без ущерба для безопасности: работает replay protection с секно, эксипрейшн с valid_until
⁃ Контракт шардирован по tg_user_id и tma_id, тг подписи валидны только для контракта этого юзера
Главное отличие Telegram Wallet от торговых ботов или Тма кошельков бирж (которые тоже работают без мнемоник) в том, что они просто хранят вашу ту же самую ‘green bread satoshi durov …’ сидку на бэке, автоматически подписывая транзы за вас. Тут же - идейно другой механизм работы, в котором этих ненавистных 24 слов просто нет, подписи работают по-другому, через тг.
Минусы такого подхода:
⁃ Завязка на Телеграм и Тма (вдруг свой приватный ключ потеряют или приложение забанят)
⁃ Завязка на свой Телеграм аккаунт (тоже могут забанить или просто утопить телефон с симкой)
Плюсы:
⁃ Не нужно сохранять мнемонику
⁃ Можно делать нативные кошельки под Тма
⁃ Весело
Вдобавок к контракту я https://github.com/Kaladin13/kit/tree/feat/tg-wallet интеграцию Telegram Wallet в протокол Ton Connect, и даже сделал демо фронтенд для такого нового типа кошельков - можно подключиться к любому даппу и через привычный UI делать декс свапы и всё остальное.
Код контракта - https://github.com/Kaladin13/telegram-wallet, пример задеплоенного https://testnet.tonviewer.com/kQDTrCFk5sdyL93i5J6CiYRDs2osyd4WYzgDV1QOKDB2AIqE
Под конец открытые вопросы на подумать:
⁃ Зачем и для кого Телеграм изначально добавляли такой функционал? (не для меня.)
⁃ Как можно решить описанные мной минусы
⁃ Другое применение ончейн тг подписей