9.9 KiB
Глоссарий Montana
Версия: v1.0.0
Аудитория: ИИ-агент. Прочитай после ВВЕДЕНИЕ.md.
Каждый термин — короткое определение + где встречается + пример. Алфавит русский (для русскоязычных терминов) + английский (для технических).
А
Adversarial gate (Враждебный гейт)
Процедурная проверка во время изменения спеки/кода, симулирующая атаку или ошибку. Например, Gate −1 — верификация премисс критика по спеке. Список — в Протокол/CLAUDE.md секция «Гейты».
Где: CLAUDE.md, CRITIC.md (роли).
Anchor (Якорь)
Точка финализации состояния. Множество узлов BFT-комитета подписывает блок и фиксирует его как канонический. Подписи — ML-DSA-65 (квантустойчивые).
Где: mt-anchor крейт, спека раздел «Anchor pipeline».
Пример: anchor каждые ~N секунд, M из K подписей нужны.
Б
BFT (Byzantine Fault Tolerance)
Консенсус устойчивый к злонамеренным узлам. Montana: BFT-комитет финализирует Anchor.
Где: mt-consensus крейт.
Binding KAT vector (Связывающий KAT)
Test vector в формате input hex → output hex, дословно фиксирующий результат формулы. Любая реализация (Rust/Go/TS/Swift) должна выдавать тот же байт-точный output. SSOT для cross-implementation correctness.
Где: mt-conformance крейт, спека раздел «KAT vectors».
Bootstrap PoW (Бутстрап-доказательство работы)
256-bit integer division proof, который новый узел предоставляет при первом подключении к сети. Защита от Sybil-атаки на boostrap.
Где: mt-net::pow модуль, спека «Bootstrap».
В
VDF (Verifiable Delay Function)
Функция f(x), которую нельзя ускорить параллелизмом, но проверка результата мгновенная. В Montana — итеративный SHA-256 фиксированной длины D. Создаёт TimeChain.
Где: mt-vdf крейт, спека раздел «TimeChain layer».
Пример: D = 325M итераций ≈ N секунд на референсном GPU.
Г
Genesis Decree (Генезис-декрет)
Начальное состояние сети: protocol_params (D₀, размеры, лимиты), bootstrap nodes pubkeys, initial accounts. Hard-coded в спеке + reproducible в коде.
Где: спека раздел «Genesis Decree», genesis.json (планируется).
Gate см. Adversarial gate.
Д
Dandelion++ (Одуванчик++)
Сетевой протокол приватности транзакций: stem-фаза (релей через одного соседа), fluff-фаза (broadcast). Затрудняет deanonymization.
Где: mt-net::dandelion модуль.
Deferred (Отложенный)
Решение перенесённое «на потом». Запрещено в Pre-mainnet — все правильные решения применяются сейчас. См. feedback feedback_audit_ready_zero_deferred.
Dev/test/temp markers
Запрещённые префиксы в production-коде. Имена остаются неизменными от M5 до mainnet. См. feedback feedback_production_grade_naming.
И
IBT (Identity-Bound Tunnel)
Криптографическое доказательство что туннель связан с конкретной identity (публичным ключом узла). Не позволяет ноде маскироваться под другую.
Где: mt-net::ibt модуль, спека «Network layer».
Invariant (Инвариант, [I-X])
Глобальное правило которое всегда истинно для спеки/кода. Реестр — в Протокол/CLAUDE.md. Примеры: [I-1] SSOT, [I-9] KAT vectors обязательны для каждой формулы, [I-15] no deferred decisions.
К
KAT см. Binding KAT vector.
Карточка замыкания (Closure card) Структурированное micro-spec в спеке: для одного механизма — формула + KAT + threat + storage. Используется для детализации сетевого слоя, storage layer и т.п. Где: спека раздел «Карточки замыкания механизмов».
ML-DSA-65 (Module-Lattice-based Digital Signature Algorithm)
Постквантовая подпись по FIPS 204. Размеры: pubkey 1952B, secret 4032B, signature 3309B.
Где: mt-crypto-native (через liboqs).
ML-KEM-768 (Module-Lattice-based Key Encapsulation Mechanism)
Постквантовый KEM по FIPS 203. Размеры: pubkey 1184B, ciphertext 1088B, shared secret 32B.
Где: mt-crypto-native.
Н
NodeChain (Цепочка узлов)
Параллельная TimeChain цепочка NodeRecords. Содержит метаданные узлов (pubkey, vdf_chain_length при включении, и т.д.). Используется для селекции лидера.
Где: спека раздел «NodeChain layer».
NodeRecord (Запись узла) Структура с метаданными узла: pubkey, vdf_chain_length, capabilities, и т.д. Публикуется при включении узла в сеть.
О
Окно (window)
Временной интервал в TimeChain, фиксированной длины (например, 60 секунд). window_index — порядковый номер окна. Внутри окна происходят определённые события (proposals, anchors).
П
Pre-mainnet принцип
Montana ещё не запущена. Любые breaking changes применяются сразу, без backward-compatibility. См. feedback feedback_premainnet_principle.
Privacy by default
Архитектурный принцип: приватная сеть, пользователь сам выбирает что раскрыть. См. project memory project_privacy_default.
Protocol params
Часть Genesis Decree: размеры подписей, тайминги, лимиты (max_protocol_payload_bytes, max_sf_ciphertext_bytes, bootstrap_pow_difficulty и т.п.). Меняются только через hard fork.
Р
Role (Роль)
Структурированный промпт для ИИ-агента, формализующий задачу. В Montana 4+ ролей: архитектор спеки, критик спеки, архитектор кода, критик кода. См. КАРТА-РОЛЕЙ.md.
С
Scale baseline 1B+
Все архитектурные решения проверяются на ≥1 миллиард активных пользователей. Механизмы которые не масштабируются отбрасываются. См. project memory project_montana_scale_1b.
Selection / Lottery (Селекция / Лотерея)
Детерминированный выбор лидера для следующего blockround. Формула: sort_key = H(VDF_output || node_pubkey || ...). Узел с минимальным sort_key — лидер.
SSOT (Single Source of Truth) Глобальный инвариант [C-1]: каждая значимая сущность (версия, константа, формат) живёт ровно в одном месте. Дублирование запрещено. Ссылка вместо копии.
Store-and-Forward
Сетевой слой: если получатель оффлайн, сообщение буферизуется промежуточным узлом и доставляется позже.
Где: mt-net::store_forward модуль.
Т
TimeChain (Цепочка времени)
Последовательная цепочка VDF-хешей. Доказательство «прошло время T». Не blockchain, не DAG — просто длинная цепочка SHA-256(SHA-256(...(seed))) с длиной D.
Где: mt-vdf крейт, спека «TimeChain layer».
Threat Model (Модель угроз) Структурированное описание атак и mitigation. В спеке — 7×7 matrix для сетевого слоя. Где: спека раздел «Threat Model».
У
Узел (Node) Участник сети Montana. Каждый узел имеет identity (pubkey), может публиковать NodeRecord, участвовать в селекции, релеить сообщения.
Ф
FIPS 203 / 204 (Federal Information Processing Standards) Стандарты NIST для постквантовой криптографии. FIPS 203 — ML-KEM, FIPS 204 — ML-DSA.
FN-DSA см. ML-DSA.
Ч
Chain length (Длина цепочки)
Количество VDF-итераций. В прозе — «длина цепочки», в коде — chain_length.
Ш
SHA-256 Хеш-функция, основа VDF в Montana. Итерируется D раз для создания TimeChain.
Время чтения: ~5 минут.
Следующий шаг: КАРТА-РОЛЕЙ.md.