Перейти к содержанию
Learning Platform
Troubleshooting
Глоссарий

Глоссарий экосистемы TON

Справочник ключевых терминов блокчейна TON -- от архитектуры до смарт-контрактов, DeFi и Telegram Mini Apps. Определения, примеры кода и ссылки на уроки курса.

10 категорий · 113 терминов

Архитектура TON

Account State

Account State
Термин

Состояние аккаунта в TON, включающее баланс, код контракта, данные контракта и библиотеки. Каждый аккаунт может находиться в одном из состояний: uninit, active, frozen.

Подробнее в уроках:

Bag of Cells

Bag of Cells (BoC)
Термин

Формат сериализации данных в TON. BoC -- это компактное двоичное представление дерева ячеек, используемое для хранения и передачи данных, включая блоки, транзакции и сообщения.

Пример:
// Сериализация BoC в Tact
let cell: Cell = beginCell()
    .storeUint(42, 32)
    .endCell();
let boc: Slice = cell.asSlice();
Подробнее в уроках:

Bounceable Address

Bounceable Address
Термин

Формат адреса TON с флагом bounceable=true. Если контракт по этому адресу не существует или не может обработать сообщение, средства автоматически возвращаются отправителю. Рекомендуется для межконтрактных взаимодействий.

Подробнее в уроках:

Infinite Sharding

Infinite Sharding Paradigm
Термин

Парадигма масштабирования TON, при которой каждый аккаунт теоретически представляет собственный шард. Шардчейны автоматически разделяются и объединяются в зависимости от нагрузки, обеспечивая горизонтальное масштабирование.

Подробнее в уроках:

Masterchain

Masterchain
Термин

Главная цепочка TON (workchain_id = -1), хранящая конфигурацию сети, информацию о валидаторах и хеши блоков всех воркчейнов. Обеспечивает консенсус и финальность для всей сети.

Подробнее в уроках:

Non-Bounceable Address

Non-Bounceable Address
Термин

Формат адреса TON с флагом bounceable=false. Используется для первого перевода на новый кошелек, когда контракт ещё не развёрнут. Сообщения на такой адрес не возвращаются при ошибке.

Подробнее в уроках:

Proof-of-Stake (TON)

Proof-of-Stake (TON)
Термин

Механизм консенсуса TON, где валидаторы замораживают залог в Toncoin для участия в валидации блоков. Недобросовестные валидаторы теряют часть залога (slashing).

Подробнее в уроках:

Shardchain

Shardchain
Термин

Подцепочка воркчейна, обрабатывающая подмножество аккаунтов. Шардчейны автоматически разделяются при высокой нагрузке и объединяются при низкой. Адрес аккаунта определяет принадлежность к шарду.

Подробнее в уроках:

Slashing

Slashing
Термин

Механизм наказания валидаторов за недобросовестное поведение. При обнаружении нарушений (двойная подпись, простой) часть залога валидатора конфискуется через голосование других валидаторов.

Подробнее в уроках:

TON

The Open Network
Термин

Децентрализованная блокчейн-платформа, изначально разработанная командой Telegram. Отличается многоуровневой архитектурой (masterchain, workchains, shardchains), асинхронной моделью акторов и глубокой интеграцией с Telegram.

Подробнее в уроках:

Tree of Cells

Tree of Cells
Термин

Основная структура данных TON. Каждая ячейка содержит до 1023 бит данных и до 4 ссылок на другие ячейки. Всё в TON -- блоки, транзакции, состояние -- представлено как дерево ячеек.

Пример:
// Дерево ячеек: корень с двумя дочерними
let child1 = beginCell().storeUint(1, 8).endCell();
let child2 = beginCell().storeUint(2, 8).endCell();
let root = beginCell()
    .storeRef(child1)
    .storeRef(child2)
    .endCell();
Подробнее в уроках:

Validator

Validator
Термин

Узел сети TON, участвующий в валидации блоков. Валидаторы выбираются через Elector Contract на основе размера залога. Они проверяют транзакции, формируют блоки и получают вознаграждение.

Подробнее в уроках:

Validator Election

Validator Election
Термин

Процесс выбора валидаторов через смарт-контракт Elector. Кандидаты отправляют залог, и контракт выбирает набор валидаторов на раунд (~18 часов) на основе размера стейка.

Подробнее в уроках:

Workchain

Workchain
Термин

Независимая цепочка в сети TON со своими правилами обработки транзакций. Basechain (workchain_id = 0) -- основной воркчейн для пользовательских контрактов. TON поддерживает до 2^32 воркчейнов.

Подробнее в уроках:

Cell

Cell
Термин

Базовая единица данных в TON. Содержит до 1023 бит данных и до 4 ссылок на дочерние ячейки. Ячейки неизменяемы после создания и используют дедупликацию по хешу.

Пример:
// Создание ячейки в Tact
let c: Cell = beginCell()
    .storeUint(0, 32)   // 32 бита
    .storeAddress(addr)  // 267 бит
    .endCell();
Подробнее в уроках:

TVM и Исполнение

Builder

Builder
Термин

Примитив TVM для последовательной записи данных в новую ячейку. Builder накапливает биты и ссылки, а метод endCell() создаёт из него неизменяемую Cell.

Пример:
// Builder в Tact
let b = beginCell();
b = b.storeUint(42, 32);
b = b.storeAddress(myAddr);
let cell = b.endCell();
Подробнее в уроках:

Cell Reference

Cell Reference
Термин

Ссылка на дочернюю ячейку внутри родительской. Каждая ячейка может содержать до 4 ссылок, формируя направленный ациклический граф (DAG). Используется для хранения вложенных структур данных.

Подробнее в уроках:

Computational Gas

Computational Gas
Термин

Единица измерения вычислительных затрат в TVM. Каждая инструкция потребляет определённое количество газа. Лимит газа ограничивает время выполнения контракта и определяет комиссию за вычисления.

Пример:
// Проверка доступного газа в Tact
receive(msg: InternalMessage) {
    // Убедиться, что хватает газа
    require(context().value > ton("0.05"),
        "Insufficient gas");
}
Подробнее в уроках:

Continuation

Continuation
Термин

Объект TVM, представляющий отложенное вычисление -- набор инструкций, готовых к выполнению. Используется для реализации циклов, условных переходов и вызовов функций внутри TVM.

Подробнее в уроках:

External Message

External Message
Термин

Сообщение, отправленное в блокчейн извне (от кошелька пользователя). Не содержит Toncoin -- контракт-получатель оплачивает обработку из собственного баланса через accept_message().

Подробнее в уроках:

Forwarding Fee

Forwarding Fee
Термин

Комиссия за доставку сообщения между контрактами. Зависит от размера сообщения (количество ячеек и бит). Оплачивается из value сообщения при его маршрутизации через сеть.

Подробнее в уроках:

Internal Message

Internal Message
Термин

Сообщение между двумя контрактами внутри блокчейна TON. Может переносить Toncoin и произвольные данные. Основной механизм взаимодействия между контрактами в асинхронной модели акторов.

Пример:
// Отправка internal message в Tact
send(SendParameters{
    to: recipient,
    value: ton("0.1"),
    body: "Hello".asComment()
});

Slice

Slice
Термин

Примитив TVM для последовательного чтения данных из ячейки. Slice -- это курсор, перемещающийся по битам и ссылкам ячейки. После создания из Cell можно считывать целые числа, адреса и ссылки.

Пример:
// Чтение Slice в Tact
let s: Slice = cell.asSlice();
let value: Int = s.loadUint(32);
let addr: Address = s.loadAddress();
Подробнее в уроках:

Stack Machine

Stack Machine
Термин

Архитектура TVM, основанная на стеке. Операнды помещаются на стек, инструкции извлекают их и помещают результат обратно. TVM использует стек из 256-битных целых чисел, ячеек, слайсов и continuation.

Подробнее в уроках:

Storage Fee

Storage Fee
Термин

Комиссия за хранение данных контракта в блокчейне. Начисляется за каждый бит и ячейку в состоянии контракта за единицу времени. Если баланс контракта недостаточен, аккаунт замораживается.

Подробнее в уроках:

TVM

TON Virtual Machine
Термин

Виртуальная машина TON, выполняющая код смарт-контрактов. Основана на стековой архитектуре, оперирует 257-битными целыми числами и ячейками. Каждый контракт исполняется изолированно в рамках модели акторов.

Actor Model

Actor Model
Термин

Модель параллельных вычислений, принятая в TON. Каждый смарт-контракт -- независимый актор с собственным состоянием, общающийся с другими только через асинхронные сообщения. Гарантирует отсутствие разделяемого состояния.

Смарт-контракты

Blueprint

Blueprint
Термин

Фреймворк для разработки смарт-контрактов TON. Предоставляет инструменты для компиляции, тестирования и деплоя контрактов. Работает с Tact и FunC проектами.

Пример:
# Создание проекта Blueprint
npm create ton@latest my-project
# Компиляция
npx blueprint build
# Тестирование
npx blueprint test
Подробнее в уроках:

Bounce

Bounce (Bouncing)
Термин

Механизм автоматического возврата сообщения отправителю при ошибке обработки. Если контракт выбросил исключение, сообщение с оставшимися средствами отправляется обратно. Критически важен для безопасности межконтрактных взаимодействий.

Подробнее в уроках:

Contract Code

Contract Code
Термин

Скомпилированный байт-код смарт-контракта, хранящийся в ячейке. Определяет логику обработки входящих сообщений. Может быть обновлён через механизм code upgrade.

Подробнее в уроках:

Contract Data

Contract Data
Термин

Персистентное хранилище смарт-контракта, представленное в виде ячейки. Хранит состояние контракта между транзакциями. В Tact данные описываются как поля контракта.

Подробнее в уроках:

Deployment

Deployment
Термин

Процесс размещения смарт-контракта в блокчейне. В TON деплой выполняется через отправку external message со StateInit (код + данные) на вычисленный адрес контракта.

Пример:
// Деплой через Blueprint
npx blueprint run deployMyContract
// Или программно:
await myContract.sendDeploy(
    provider.sender(),
    toNano('0.05')
);
Подробнее в уроках:

FunC

FunC
Термин

Низкоуровневый язык программирования для смарт-контрактов TON. Предоставляет прямой доступ к примитивам TVM. Используется в legacy-контрактах и для чтения существующего кода. Для новой разработки рекомендуется Tact или Tolk.

Подробнее в уроках:

Get-method

Get-method
Термин

Функция контракта, вызываемая offchain для чтения данных без создания транзакции. Не изменяет состояние контракта и не требует комиссий. В Tact объявляется ключевым словом get fun.

Пример:
// Get-method в Tact
get fun balance(): Int {
    return myBalance();
}

// Вызов offchain
const result = await contract.getBalance();
Подробнее в уроках:

Multisig Wallet

Multisig Wallet
Термин

Кошелёк с мультиподписью, требующий подтверждения нескольких владельцев для выполнения транзакции. Типичная схема: k-of-n, где k подписей из n необходимы.

Подробнее в уроках:

Receiver

Receiver
Термин

Обработчик входящих сообщений в Tact. Объявляется через receive() и определяет логику обработки конкретного типа сообщения. Каждый контракт может иметь несколько receiver для разных типов сообщений.

Пример:
// Receiver в Tact
receive(msg: Increment) {
    self.counter += msg.amount;
}

receive("reset") {
    self.counter = 0;
}
Подробнее в уроках:

Sandbox

Sandbox
Термин

Среда локального тестирования смарт-контрактов TON от Blueprint. Эмулирует блокчейн, позволяя выполнять транзакции, проверять газ и тестировать межконтрактные взаимодействия без реальной сети.

Пример:
// Тест в Sandbox
const blockchain = await Blockchain.create();
const contract = blockchain.openContract(
    MyContract.createFromConfig({...})
);
const result = await contract.sendIncrement(
    deployer.getSender(), toNano('0.05'), 1n
);
Подробнее в уроках:

Send Mode

Send Mode
Термин

Флаги, управляющие отправкой сообщений в TON. Определяют, сколько Toncoin приложить, как обработать ошибки и как распределить баланс. Основные режимы: 0 (обычный), 64 (весь входящий value), 128 (весь баланс).

Пример:
// Send Mode флаги в Tact
send(SendParameters{
    to: addr,
    value: 0,
    mode: SendRemainingValue // mode 64
});
Подробнее в уроках:

StateInit

StateInit
Термин

Начальное состояние контракта при деплое, содержащее код и данные. Адрес контракта в TON вычисляется как hash(StateInit), поэтому он известен до деплоя. StateInit прикрепляется к первому сообщению на адрес.

Tact

Tact
Термин

Высокоуровневый язык программирования для смарт-контрактов TON. Предоставляет строгую типизацию, встроенную сериализацию и удобный синтаксис для работы с сообщениями. Рекомендуемый язык для новой разработки.

Пример:
// Простой контракт на Tact
contract Counter {
    val: Int as uint32 = 0;
    receive("increment") {
        self.val += 1;
    }
    get fun value(): Int {
        return self.val;
    }
}
Подробнее в уроках:

Tolk

Tolk
Термин

Современная замена FunC с улучшенным синтаксисом, сохраняющая полный доступ к примитивам TVM. Использует привычный синтаксис с фигурными скобками вместо FunC-специфичных конструкций.

Пример:
// Tolk: функция get-метода
fun getBalance(): int {
    return getMyOriginalBalance();
}
Подробнее в уроках:

accept_message

accept_message
Термин

Функция TVM, позволяющая контракту принять external message и оплатить газ из собственного баланса. Без вызова accept_message обработка external message будет отклонена.

Подробнее в уроках:

Стандарты токенов

Getgems

Getgems
Термин

Крупнейший NFT-маркетплейс в экосистеме TON. Поддерживает листинг, продажу и аукционы NFT и SBT. Использует стандарт TEP-62 для коллекций.

Подробнее в уроках:

Jetton 2.0

Jetton 2.0
Термин

Обновлённый стандарт взаимозаменяемых токенов TON (TEP-74, сентябрь 2025). Двухконтрактная архитектура: Jetton Master хранит метаданные, Jetton Wallet -- баланс каждого владельца. Обеспечивает шардируемость через распределённые кошельки.

Jetton Master

Jetton Master
Термин

Центральный контракт токена Jetton, хранящий метаданные (имя, символ, описание) и общий supply. Отвечает за минтинг новых токенов и предоставляет информацию о токене через get-методы.

Пример:
// Get-метод Jetton Master
get fun get_jetton_data(): JettonData {
    return JettonData{
        totalSupply: self.totalSupply,
        mintable: self.mintable,
        owner: self.owner,
        content: self.content,
        walletCode: self.walletCode
    };
}
Подробнее в уроках:

Jetton Wallet

Jetton Wallet
Термин

Индивидуальный контракт-кошелёк для хранения баланса Jetton конкретного владельца. Каждый пользователь имеет отдельный Jetton Wallet для каждого токена. Адрес вычисляется детерминированно из адреса владельца и Jetton Master.

NFT Collection

NFT Collection
Термин

Контракт-коллекция NFT в TON (TEP-62). Хранит метаданные коллекции и отвечает за минтинг отдельных NFT Item. Каждый элемент -- отдельный контракт со ссылкой на коллекцию.

Подробнее в уроках:

NFT Item

NFT Item
Термин

Индивидуальный контракт невзаимозаменяемого токена в TON. Хранит индекс в коллекции, адрес владельца и метаданные. Передача происходит через change_owner сообщение.

Подробнее в уроках:

Opcode

Opcode
Термин

32-битный идентификатор типа сообщения в TON-контрактах. Первые 32 бита тела сообщения определяют, какой обработчик вызвать. Стандартные opcodes: 0x7362d09c (transfer), 0x178d4519 (internal_transfer).

Пример:
// Opcode в Tact определяется автоматически
message(0x7362d09c) TokenTransfer {
    queryId: Int as uint64;
    amount: Int as coins;
    destination: Address;
}
Подробнее в уроках:

Royalty

Royalty
Термин

Процент от вторичных продаж NFT, выплачиваемый создателю коллекции. В TON роялти определяются на уровне коллекции через стандарт TEP-66 и применяются маркетплейсами.

Подробнее в уроках:

SBT

Soulbound Token
Термин

Непередаваемый токен (TEP-85), привязанный к конкретному адресу. Используется для сертификатов, достижений и удостоверений. Отличается от обычного NFT запретом на передачу владения.

Подробнее в уроках:

TEP-62

TEP-62
Термин

TON Enhancement Proposal, определяющий стандарт NFT-коллекций и отдельных NFT Item. Описывает интерфейсы get-методов, формат метаданных и протокол передачи владения.

Подробнее в уроках:

TEP-74

TEP-74
Термин

TON Enhancement Proposal, определяющий стандарт Jetton (взаимозаменяемых токенов). Описывает архитектуру Master-Wallet, протокол передачи токенов и обязательные get-методы.

Подробнее в уроках:

TEP-85

TEP-85
Термин

TON Enhancement Proposal, определяющий стандарт Soulbound Token. Расширяет TEP-62 (NFT), добавляя запрет на передачу, механизм отзыва и подтверждения привязки к адресу.

Подробнее в уроках:

DeFi на TON

AMM

Automated Market Maker
Термин

Автоматический маркет-мейкер -- алгоритм ценообразования на основе математической формулы (обычно x*y=k). В TON AMM реализован в DEX-протоколах STONfi и DeDust для обмена Jetton-токенов.

Подробнее в уроках:

DEX

Decentralized Exchange
Термин

Децентрализованная биржа для обмена токенов без посредников. В TON основные DEX -- STONfi и DeDust -- используют AMM с пулами ликвидности и асинхронный обмен через цепочку сообщений.

Подробнее в уроках:

DeDust

DeDust
Термин

DEX-протокол на TON с архитектурой Vault-Pool-Factory. Поддерживает volatile и stable пулы. Vault контракты изолируют активы, обеспечивая безопасность при обменах.

Подробнее в уроках:

EVAA

EVAA Protocol
Термин

Протокол лендинга и заимствования на TON. Позволяет предоставлять активы в кредитные пулы для получения процентов и занимать под залог. Использует динамические процентные ставки.

Подробнее в уроках:

LP Token

LP Token (Liquidity Provider Token)
Термин

Токен, подтверждающий долю провайдера в пуле ликвидности. Выпускается при добавлении ликвидности и сжигается при выводе. Представляет пропорциональную долю обоих активов пула.

Подробнее в уроках:

Liquid Staking

Liquid Staking
Термин

Механизм стейкинга, при котором пользователь получает ликвидный токен-расписку (tsTON, stTON) в обмен на застейканные Toncoin. Позволяет использовать застейканные активы в DeFi-протоколах.

Подробнее в уроках:

Liquidity Pool

Liquidity Pool
Термин

Пул ликвидности -- смарт-контракт, хранящий пару активов для обменов. Пользователи вносят оба актива в равной стоимости и получают LP-токены. Цена определяется соотношением активов в пуле.

Подробнее в уроках:

Nominator Pool

Nominator Pool
Термин

Смарт-контракт для коллективного стейкинга в TON. Позволяет нескольким номинаторам объединить средства для участия в валидации, делегируя техническую работу оператору пула.

Подробнее в уроках:

Pool Contract

Pool Contract
Термин

Контракт пула ликвидности в DEX-протоколах TON. Хранит резервы двух активов, выполняет расчёт обменного курса по формуле AMM и выпускает LP-токены.

Подробнее в уроках:

Router Contract

Router Contract
Термин

Контракт-маршрутизатор в DEX STONfi, направляющий запросы на обмен к соответствующим пулам. Принимает Jetton от пользователя и организует цепочку сообщений для выполнения свопа.

Подробнее в уроках:

STONfi

STONfi
Термин

Крупнейший DEX-протокол на TON с архитектурой Router-Pool. Поддерживает обмен Jetton-токенов через AMM пулы ликвидности. Использует цепочку из 5-7 внутренних сообщений для выполнения свопа.

Подробнее в уроках:

Vault Contract

Vault Contract
Термин

Контракт-хранилище в протоколе DeDust, изолирующий активы от логики обмена. Каждый тип актива имеет отдельный Vault, что повышает безопасность при обменах.

Подробнее в уроках:

stTON

stTON
Термин

Токен ликвидного стейкинга от протокола Bemo. Представляет застейканные Toncoin с накопленным вознаграждением. Курс stTON к TON растёт со временем.

Подробнее в уроках:

tsTON

tsTON
Термин

Токен ликвидного стейкинга от протокола Tonstakers. Представляет застейканные Toncoin, которые можно использовать в DeFi-протоколах, продолжая получать стейкинг-вознаграждения.

Подробнее в уроках:

TON Connect

Bridge Protocol

Bridge Protocol
Термин

Протокол моста в TON Connect, обеспечивающий шифрованную связь между dApp и кошельком. Сообщения шифруются X25519 и передаются через SSE-соединение или HTTP-bridge сервер.

Подробнее в уроках:

SSE

Server-Sent Events
Термин

Технология однонаправленной передачи данных от сервера к клиенту. В TON Connect используется для доставки сообщений от кошелька к dApp через bridge-сервер в реальном времени.

Подробнее в уроках:

Session (TON Connect)

Session (TON Connect)
Термин

Сессия TON Connect -- зашифрованный канал связи между dApp и кошельком. Создаётся при подключении, сохраняется между перезагрузками. Идентифицируется парой X25519 ключей.

TON Connect 2.0

TON Connect 2.0
Термин

Протокол подключения кошельков к dApp в экосистеме TON. Обеспечивает безопасную аутентификацию, подписание транзакций и обмен данными между приложением и кошельком через зашифрованный мост.

TonConnectButton

TonConnectButton
Термин

React-компонент из @tonconnect/ui-react для подключения кошелька. Отображает кнопку подключения, QR-код и информацию о подключённом кошельке. Основной UI-элемент интеграции TON Connect.

Пример:
// TonConnectButton в React
import { TonConnectButton } from
    '@tonconnect/ui-react';

function App() {
    return <TonConnectButton />;
}
Подробнее в уроках:

X25519

X25519
Термин

Алгоритм обмена ключами на эллиптической кривой Curve25519. В TON Connect используется для создания общего секрета между dApp и кошельком, на основе которого шифруются все сообщения сессии.

Подробнее в уроках:

manifest.json (TON Connect)

manifest.json (TON Connect)
Термин

Файл манифеста dApp для TON Connect. Содержит имя приложения, URL, иконку. Кошелёк отображает эту информацию пользователю при запросе на подключение для идентификации dApp.

Подробнее в уроках:

ton_proof

ton_proof
Термин

Механизм аутентификации в TON Connect, подтверждающий владение кошельком. Кошелёк подписывает challenge от dApp приватным ключом. Бэкенд верифицирует подпись для авторизации пользователя.

Подробнее в уроках:

Telegram Mini Apps

BackButton

BackButton
Термин

Кнопка навигации назад в интерфейсе Telegram Mini App. Управляется через WebApp.BackButton API. Позволяет реализовать внутреннюю навигацию приложения с интеграцией в UI Telegram.

Подробнее в уроках:

HMAC-SHA256 Validation

HMAC-SHA256 Validation
Термин

Метод проверки подлинности initData от Telegram. Бэкенд вычисляет HMAC-SHA256 от строки параметров initData с ключом, производным от токена бота. Совпадение хешей подтверждает, что данные не подделаны.

Пример:
// Проверка initData на сервере
const secret = crypto
    .createHmac('sha256', 'WebAppData')
    .update(BOT_TOKEN)
    .digest();
const hash = crypto
    .createHmac('sha256', secret)
    .update(dataCheckString)
    .digest('hex');
Подробнее в уроках:

MainButton

MainButton
Термин

Основная кнопка действия внизу экрана Telegram Mini App. Настраивается через WebApp.MainButton API -- текст, цвет, прогресс. Используется для ключевых действий: оплата, подтверждение, отправка.

Пример:
// MainButton в Mini App
Telegram.WebApp.MainButton
    .setText('Оплатить')
    .show()
    .onClick(() => processPayment());
Подробнее в уроках:

Telegram Mini App

Telegram Mini App (TMA)
Термин

Веб-приложение, работающее внутри Telegram через WebView. Имеет доступ к Telegram API, данным пользователя и нативным UI-элементам. Может интегрироваться с TON для платежей через TON Connect.

Telegram Stars

Telegram Stars (XTR)
Термин

Внутренняя валюта Telegram для покупок в Mini Apps и ботах. Позволяет принимать платежи без внешних платёжных систем. Курс фиксирован Telegram, вывод через Fragment.

Подробнее в уроках:

WebApp API

WebApp API
Термин

JavaScript API, предоставляемый Telegram через объект window.Telegram.WebApp. Позволяет Mini App взаимодействовать с клиентом Telegram: получать данные пользователя, управлять UI, открывать ссылки.

Подробнее в уроках:

initData

initData
Термин

Строка с данными инициализации Mini App, передаваемая Telegram. Содержит информацию о пользователе, чате, времени запуска и хеш для верификации. Используется для аутентификации пользователя на бэкенде.

pre_checkout_query

pre_checkout_query
Термин

Событие Bot API, отправляемое перед завершением платежа Stars. Бот должен ответить answerPreCheckoutQuery в течение 10 секунд для подтверждения или отклонения платежа.

Подробнее в уроках:

sendInvoice

sendInvoice
Термин

Метод Bot API для отправки счёта на оплату в Stars. Создаёт кнопку оплаты в чате или Mini App. Принимает описание товара, сумму в Stars и payload для идентификации покупки.

Подробнее в уроках:

web_app_data

web_app_data
Термин

Метод отправки данных из Mini App в бот через Telegram.WebApp.sendData(). Данные поступают как web_app_data в сообщении бота. Ограничение: работает только при открытии через keyboard button.

Подробнее в уроках:

Сервисы TON

.ton Domain

.ton Domain
Термин

Доменное имя в системе TON DNS, привязанное к адресу кошелька или сайта. Приобретается через аукцион на DNS-маркетплейсе. Хранится как NFT и может быть передано другому владельцу.

Подробнее в уроках:

ADNL

Abstract Datagram Network Layer
Термин

Низкоуровневый сетевой протокол TON для P2P-коммуникации. Обеспечивает шифрование, маршрутизацию и NAT-обход. Используется TON Proxy, TON Storage и узлами сети для безопасного обмена данными.

Подробнее в уроках:

Bag ID

Bag ID
Термин

Уникальный идентификатор набора файлов в TON Storage, вычисляемый как хеш merkle-дерева содержимого. Используется для адресации и верификации данных в децентрализованном хранилище.

Подробнее в уроках:

DHT

Distributed Hash Table
Термин

Распределённая хеш-таблица TON на основе протокола Kademlia. Хранит соответствия ADNL-адресов и IP-адресов узлов, маршрутную информацию для TON Storage и данные TON DNS.

Подробнее в уроках:

DNS Resolver

DNS Resolver
Термин

Смарт-контракт в TON DNS, отвечающий за разрешение доменных имён. Корневой resolver хранится в конфигурации сети. Поддоменные resolver-ы могут быть настроены владельцами доменов.

Подробнее в уроках:

RLDP

Reliable Large Datagram Protocol
Термин

Протокол надёжной передачи больших данных поверх ADNL. Обеспечивает гарантированную доставку, разбиение на пакеты и сборку. Используется TON Storage и TON Sites для передачи файлов.

Подробнее в уроках:

TEP-81

TEP-81
Термин

TON Enhancement Proposal, определяющий стандарт TON DNS. Описывает формат DNS-записей в смарт-контрактах, типы записей (wallet, site, storage) и процесс разрешения доменных имён.

Подробнее в уроках:

TON DNS

TON DNS
Термин

Децентрализованная система доменных имён TON, хранящая DNS-записи в смарт-контрактах. Позволяет привязывать .ton домены к адресам кошельков, сайтов и хранилищ. Домены являются NFT.

Подробнее в уроках:

TON Proxy

TON Proxy
Термин

Децентрализованный прокси-сервис TON на основе ADNL. Обеспечивает анонимный доступ к TON Sites и обычному интернету. Работает через сеть промежуточных узлов с шифрованием трафика.

Подробнее в уроках:

TON Sites

TON Sites
Термин

Децентрализованные веб-сайты, доступные через TON Proxy по ADNL-адресу или .ton домену. Не требуют традиционного хостинга и DNS. Контент передаётся через протокол RLDP.

Подробнее в уроках:

TON Storage

TON Storage
Термин

Децентрализованное файловое хранилище TON, работающее по принципу BitTorrent. Файлы разбиваются на части, распределяются по узлам сети. Адресация по Bag ID (хеш содержимого).

Подробнее в уроках:

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

Audit Checklist

Audit Checklist
Термин

Контрольный список проверок безопасности для смарт-контрактов TON. Включает проверки: обработка bounced-сообщений, валидация газа, целочисленные переполнения, гонки состояний, контроль доступа.

Подробнее в уроках:

Bounced Message Handling

Bounced Message Handling
Термин

Обработка возвращённых сообщений в смарт-контрактах TON. Если отправленное сообщение вызвало ошибку, контракт-отправитель получает bounced-сообщение и должен откатить изменения состояния.

Пример:
// Обработка bounced в Tact
bounced(msg: bounced<TokenTransfer>) {
    // Откатить баланс
    self.balance += msg.amount;
}
Подробнее в уроках:

Code Upgrade

Code Upgrade
Термин

Механизм обновления кода смарт-контракта в TON через set_code(). Позволяет исправлять баги и добавлять функциональность после деплоя. Требует строгого контроля доступа -- только owner должен иметь право на обновление.

Подробнее в уроках:

Excess Return

Excess Return (0xd53276db)
Термин

Паттерн возврата неиспользованного газа отправителю через сообщение с opcode 0xd53276db. Предотвращает накопление избыточных средств в промежуточных контрактах при цепочках сообщений.

Пример:
// Возврат excess в Tact
send(SendParameters{
    to: sender(),
    value: 0,
    mode: SendRemainingValue,
    body: Excesses{queryId: msg.queryId}
        .toCell()
});
Подробнее в уроках:

Gas Validation

Gas Validation
Термин

Проверка достаточности газа перед выполнением операций в контракте. Без валидации контракт может выполнить часть логики и остановиться, оставив состояние в некорректном промежуточном виде.

Пример:
// Валидация газа в Tact
receive(msg: Transfer) {
    require(context().value >= ton("0.05"),
        "Insufficient gas");
    // ... логика перевода
}
Подробнее в уроках:

Integer Overflow

Integer Overflow
Термин

Ошибка переполнения целого числа, когда результат арифметической операции выходит за границы типа. TVM использует 257-битные целые, но при сериализации в ячейки диапазон ограничивается (uint32, coins и др.).

Подробнее в уроках:

Replay Attack

Replay Attack
Термин

Атака повторного воспроизведения, при которой злоумышленник повторно отправляет перехваченное сообщение. В TON защита реализуется через seqno (порядковый номер) в кошельках и проверку query_id в контрактах.

Подробнее в уроках:

TOCTOU

Time-of-Check to Time-of-Use
Термин

Уязвимость гонки состояний: между проверкой условия и его использованием состояние может измениться. В TON особенно актуально из-за асинхронности -- между отправкой и доставкой сообщения состояние контракта-получателя может обновиться.

Подробнее в уроках:

msg_value

msg_value
Термин

Количество Toncoin, приложенное к входящему сообщению. Используется для оплаты газа вычислений и пересылки дочерних сообщений. Корректная проверка msg_value -- ключевой паттерн безопасности.

Подробнее в уроках:

seqno

seqno (Sequence Number)
Термин

Порядковый номер транзакции кошелька TON. Инкрементируется после каждого external message. Защищает от replay-атак: сообщение с уже использованным seqno отклоняется.

Инструменты и инфраструктура

Faucet

Faucet
Термин

Сервис раздачи тестовых Toncoin для разработки в testnet. Позволяет бесплатно получить токены для тестирования деплоя и взаимодействия с контрактами. Доступен через @testgiver_ton_bot в Telegram.

Подробнее в уроках:

TON Web IDE

TON Web IDE
Термин

Браузерная среда разработки для смарт-контрактов TON. Поддерживает написание, компиляцию и деплой контрактов на Tact и FunC прямо в браузере без установки инструментов.

Подробнее в уроках:

Testnet

Testnet
Термин

Тестовая сеть TON для разработки и отладки. Полностью копирует mainnet, но использует тестовые токены без реальной стоимости. Адреса testnet маркируются флагом testOnly.

Подробнее в уроках:

Tonkeeper

Tonkeeper
Термин

Популярный криптокошелёк для экосистемы TON. Поддерживает TON Connect 2.0, отправку транзакций, просмотр NFT и взаимодействие с dApps. Доступен как мобильное приложение и расширение браузера.

Подробнее в уроках:

Tonviewer

Tonviewer
Термин

Обозреватель блокчейна TON (block explorer). Позволяет просматривать транзакции, балансы аккаунтов, код контрактов и трассировку сообщений. Незаменимый инструмент для отладки контрактов.

Подробнее в уроках:

toncenter API

toncenter API
Термин

HTTP API для взаимодействия с блокчейном TON. Предоставляет методы для отправки транзакций, запроса состояния аккаунтов, вызова get-методов контрактов. Используется dApps и ботами для программного доступа к сети.

Подробнее в уроках: