Как будет работать Telegram Wallet? Обычный кошелёк в Тоне - это… — Lagus research — TG.ME

Как будет работать Telegram Wallet?

Обычный кошелёк в Тоне - это программа, навсегда зашитая в конкретный адрес.

V3, V4 и V5 отличаются кодом, форматом данных и интерфейсами. Чтобы перейти на следующую версию, пользователю фактически нужно задеплоить новый контракт, получить новый адрес и перенести туда активы. Старый V4 не превратится в V5 после обновления клиента - код аккаунта уже находится в блокчейне и останется прежним.

Создание нового кошелька, миграция всех активов и запись новой мнемоники - сложная для юзера операция (+помним про сбт). Даже спустя два года после релиза V5, только ~25% кошельков перешли на эту версию, против ~50% на V4.

У Telegram Wallet другой стиль, архитектура без painful migrations.

Валидаторы приняли пропоузал о добавлении нового отрицательного параметра config[-123]. Внутри него лежит ячейка с кодом контракта TgWallet (не либа или хэш, именно полный код). То есть реализация кошелька теперь хранится там же, где адреса системных контрактов, настройки консенсуса и другие параметры, изменяемые голосованием валидаторов.

Как это работает?

При создании кошелька на адрес пользователя будет деплоится не полный код, а небольшой неизменяемый контракт-трамплин. При получении любого сообщения он достаёт актуальный код кошелька из config[-123] и передаёт ему управление.

Из этого следуют несколько интересных свойств:

• адрес кошелька не меняется при обновлении логики
• пользователю не нужно создавать новый кошелёк и переносить туда свои ассеты
• сторадж фи платятся только за небольшой код трамплина
• старые данные остаются в каждом юзер контракте и при необходимости лениво мигрируются при первой валидной операции

При этом сам трамплин остаётся неизменным. Его ончейн код хэш не обновляется, он всегда исполняет код, находящийся в config[-123].

Так Telegram Wallet - обновляемая через консенсус часть инфраструктуры TON.

Код: https://github.com/ton-blockchain/tg-wallet-contract
🔥27❤17👍11✍2👎2🫡2
September 1, 2026 553 14 26