montana/Формальная Документация/06 Прикладной Слой/Приложения.md

87 lines
6.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Прикладной слой Монтаны
**Версия:** черновик 1.0
**Базовый источник:** [Montana Protocol v35.25.0 §Прикладной слой](../../Монтана-Протокол/Montana%20Protocol%20v35.25.0.md), [Montana App v3.12.0](../../Монтана-Протокол/Montana%20App%20v3.12.0.md)
## 1. Принципиальное отличие от EVM-цепей
Монтана **не имеет** виртуальной машины общего назначения (нет EVM, WASM-runtime для произвольных программ). Это сознательное архитектурное решение:
- VM общего назначения превращает блокчейн в bottleneck общего вычисления, ломает масштабируемость.
- Атаки через смарт-контракты (re-entrancy, integer overflow, oracle manipulation) — крупный класс уязвимостей DeFi — устранены конструктивно.
- Sandboxing, gas model, determinism — все решённые проблемы EVM не возникают, потому что не возникает сам слой.
Что **есть** в Монтане — фиксированный набор операций над AccountChain, плюс механизм Anchor для встраивания внешних приложений в каноническое время.
## 2. Модель приложения на Монтане
Согласно §"Модель приложения на Монтана":
1. **Приложение живёт вне цепи** (на любых стандартных серверах, в облаке, на устройстве).
2. **Приложение использует Anchor** — записывает хеш своего состояния в TimeChain через каноническую координату.
3. **Любой может проверить** что состояние было зафиксировано не позже определённого окна τ₁.
4. **Доказательство канонической позиции** — компактное (см. §"Доказательство канонической позиции").
Этим Монтана даёт прикладным разработчикам только то, что блокчейн действительно нужен: глобально согласованное упорядочение событий во времени с криптографической верификацией.
## 3. Anchor
Anchor — операция, которая вписывает 32-байтный хеш во временну́ю координату. Стоимость:
- Один Anchor занимает место в окне τ₁ (конкуренция за лотерею).
- Цена в TC = по правилу §"Граница протокола и клиентского слоя".
Применение:
- Документирование событий с привязкой к настенному времени (медиа, юриспруденция, наука).
- Notarization без traditional oracle (само время — оракул).
- Дополнительные L2-приложения, использующие Монтану как timestamping слой.
## 4. Экономика прикладного слоя
См. §"Полная экономическая картина" + [03 Экономика](../03%20Экономика/).
Кратко:
- Приложение покупает Anchor → платит TC → стимулирует операторов.
- Спрос на Anchor → спрос на TC → устойчивая экономика.
## 5. Двигатель роста сети через AccountChain
Согласно §"Двигатель роста сети через AccountChain":
- Каждый новый аккаунт → новая цепь → больше нагрузки на сеть.
- Но: anti-Sybil гарантирует что новые аккаунты создаются с реальной временной стоимостью.
- Рост сети органичен и масштабируется со временем, не с капиталом.
## 6. Локальное хранилище узла
Узел хранит:
- Свою собственную NodeChain
- Подписки на AccountChain (выбираются клиентом)
- Снапшот корня состояния
Полную глобальную историю узел НЕ обязан хранить — fast-sync через корень состояния (см. §"Быстрая синхронизация (новый узел)").
## 7. Интеграция
Прикладные интеграции описаны в основной спецификации §"Интеграция":
- iOS клиент (см. [iOS/Apps/Montana](../../iOS/Apps/Montana/))
- macOS узел (см. [macOS](../../macOS/))
- CLI инструменты (см. [CLI](../../CLI/))
## 8. Граница протокола и клиентского слоя
Чёткое разделение: что в протоколе (зафиксировано на уровне консенсуса) vs что в клиенте (свободно реализуемо). Полное описание в основной спецификации, но ключевое:
- В протоколе: подписи, AccountChain-операции, VDF, лотерея, Anchor.
- В клиенте: UX, индексирование истории, восстановление ключей, шифрование локального хранилища.
## 9. Открытые вопросы
- [ ] Спецификация Anchor-формата для типичных use-case (notarization, audit log).
- [ ] Стандарт интеграции для прикладных разработчиков (SDK).
- [ ] Анализ совместимости с L2-решениями (rollups, channels) если они появятся.
## 10. Источники
1. Montana App v3.12.0.
2. Buterin, V. (2014). *Ethereum: A Next-Generation Smart Contract Platform* (для контекста сравнения с VM-цепями).
3. Atzei, N., Bartoletti, M., Cimoli, T. (2017). *A Survey of Attacks on Ethereum Smart Contracts* (обоснование выбора без VM).