13 KiB
Финальная Архитектура Montana
Двухуровневая Система Адресов
Montana использует два типа кошельков с разными архитектурами:
1. Пользовательские Кошельки
Архитектура
- Адрес: Telegram ID
- Ключ: Telegram Session
- Хранение: Привязано к Telegram аккаунту
Философия
Максимальная простота для пользователей. Никаких seed phrases, приватных ключей, или метамасок.
Ты уже в Montana, если у тебя есть Telegram.
Примеры
Адрес: 123456789
Ключ: Telegram Session (автоматически)
Баланс: 1500 секунд
# Перевод другому пользователю
/transfer 987654321 100
Команды
/start— показывает твой Telegram ID как адрес кошелька/balance— баланс в секундах/transfer <tg_id> <amount>— перевод пользователю/tx— история транзакций
Безопасность
- ✅ Доступ через Telegram 2FA
- ✅ Никаких seed phrases (не можешь потерять)
- ⚠️ При смене Telegram аккаунта нужно переносить монеты
2. Узлы Montana
Архитектура
- Адрес: Криптографический пост-квантовый (mt + SHA256(public_key)[:20])
- Ключ: Private key ML-DSA-65 (4032 байта)
- Владелец: Telegram ID оператора узла
- IP: Только для networking, НЕ для идентификации
- Alias: Для удобства (например,
amsterdam.efir.org)
Философия
Максимальная безопасность. Защита от IP hijacking, DNS spoofing, квантовых компьютеров.
Криптография от genesis, не retrofit.
Примеры
Адрес: mta46b633d258059b90db46adffc6c5ca08f0e8d6c
Ключ: Private Key ML-DSA-65 (4032 байта)
Владелец: ADMIN_ID (keyring) (Telegram ID)
IP: 72.56.102.240 (только networking)
Alias: amsterdam.efir.org
Баланс: 5000 секунд
# Перевод узлу (по адресу)
/transfer mta46b633d258059b90db46adffc6c5ca08f0e8d6c 100
# Перевод узлу (по alias, удобнее)
/transfer amsterdam.efir.org 100
Команды
/node— список всех узлов сети/node <address|alias>— детали узла/register_node— регистрация нового узла (admin only)/transfer <address|alias> <amount>— перевод узлу
Генерация Адреса
# 1. Генерация ключей ML-DSA-65 (FIPS 204)
from dilithium_py.ml_dsa import ML_DSA_65
public_key, private_key = ML_DSA_65.keygen()
# 2. Вычисление адреса
address = "mt" + SHA256(public_key)[:20].hex()
# 3. Alias
alias = f"{node_name}.efir.org"
# Пример:
# address: mta46b633d258059b90db46adffc6c5ca08f0e8d6c
# alias: amsterdam.efir.org
Безопасность
- ✅ Защита от IP hijacking (адрес не зависит от IP)
- ✅ Защита от DNS spoofing (alias только для UX)
- ✅ Защита от MITM (все операции подписаны ML-DSA-65)
- ✅ Post-quantum защита активна с GENESIS
- ⚠️ Private key = полный контроль (4032 байта, хранить безопасно)
3. Официальные Узлы Montana
🇳🇱 Amsterdam
Адрес: mta46b633d258059b90db46adffc6c5ca08f0e8d6c
Alias: amsterdam.efir.org
Владелец: ADMIN_ID (keyring)
IP: 72.56.102.240 (networking only)
Тип: FULL NODE
Приоритет: #1
🇷🇺 Moscow
Адрес: mta8ae14f74c38294b24c2f1c20c6406e6be929c93
Alias: moscow.efir.org
Владелец: ADMIN_ID (keyring)
IP: 176.124.208.93 (networking only)
Тип: FULL NODE
Приоритет: #2
🇰🇿 Almaty
Адрес: mtd07b0d9bdab2cb592f509bc1304c368ac703c45e
Alias: almaty.efir.org
Владелец: ADMIN_ID (keyring)
IP: 91.200.148.93 (networking only)
Тип: FULL NODE
Приоритет: #3
🇷🇺 St.Petersburg
Адрес: mtb397e136de69d92e5782f3fe14533a4a37b4ddec
Alias: spb.efir.org
Владелец: ADMIN_ID (keyring)
IP: 188.225.58.98 (networking only)
Тип: FULL NODE
Приоритет: #4
🇷🇺 Novosibirsk
Адрес: mtf3f0254b405382de38494e753924b4b92692bd2c
Alias: novosibirsk.efir.org
Владелец: ADMIN_ID (keyring)
IP: 147.45.147.247 (networking only)
Тип: FULL NODE
Приоритет: #5
4. Переводы
Montana поддерживает универсальные переводы между любыми адресами:
Типы Переводов
Пользователь → Пользователь
/transfer 987654321 100
- От: Telegram ID
- Кому: Telegram ID
- Proof: криптографический хеш
- Анонимность: адреса хэшированы в публичной ленте
Пользователь → Узел
# По адресу
/transfer mta46b633d258059b90db46adffc6c5ca08f0e8d6c 50
# По alias (удобнее)
/transfer amsterdam.efir.org 50
- От: Telegram ID
- Кому: Криптографический адрес (mt...)
- Resolve: alias → cryptographic address автоматически
Узел → Пользователь
# Награда за майнинг (выполняется автоматически)
Node mta46b633d... → User 123456789: 200 seconds
- От: Криптографический адрес
- Кому: Telegram ID
- Требуется: подпись private key узла
Узел → Узел
# Перевод между узлами (через админа)
/transfer moscow.efir.org 1000
- От: Криптографический адрес
- Кому: Криптографический адрес
- Требуется: подпись private key узла отправителя
5. Криптография
MAINNET: ML-DSA-65 (FIPS 204)
Алгоритм: ML-DSA-65 (Post-Quantum)
from dilithium_py.ml_dsa import ML_DSA_65
# Генерация ключей
public_key, private_key = ML_DSA_65.keygen()
# Адрес
address = "mt" + hashlib.sha256(public_key).digest()[:20].hex()
# Подпись
signature = ML_DSA_65.sign(private_key, message)
# Верификация
ML_DSA_65.verify(public_key, message, signature)
Почему ML-DSA-65 с GENESIS:
- ✅ Post-quantum защита (lattice-based)
- ✅ NIST Level 3 security (128-bit post-quantum)
- ✅ Защита от Shor's algorithm
- ✅ FIPS 204 стандарт
- ✅ НЕ НУЖНА миграция — защита с первого дня
Размеры ключей:
| Параметр | Размер |
|---|---|
| Private key | 4032 байта |
| Public key | 1952 байта |
| Signature | 3309 байт |
6. Статус: MAINNET PRODUCTION
Январь 2026: ML-DSA-65 АКТИВЕН
CRYPTO_MODE = "ML-DSA-65" # MAINNET с genesis
Достигнуто:
- ✅ Все узлы на ML-DSA-65
- ✅ Montana защищена от квантовых компьютеров с первого дня
- ✅ Нет legacy Ed25519 — чистый post-quantum
- ✅ FIPS 204 compliant
7. Безопасность
Защита от Атак
| Атака | Пользователи | Узлы |
|---|---|---|
| IP Hijacking | N/A (no IP) | ✅ Адрес не зависит от IP |
| DNS Spoofing | N/A | ✅ Alias только для UX |
| MITM | ✅ Telegram encryption | ✅ Подписи ML-DSA-65 |
| Sybil | ✅ 1 человек = 1 Telegram | ✅ Biometrics (FIDO2) |
| Quantum | ⚠️ Telegram зависит | ✅ ML-DSA-65 (post-quantum) |
| Key Theft | ⚠️ Telegram 2FA | ⚠️ Secure storage needed |
Рекомендации
Для пользователей:
- Включи Telegram 2FA
- Не используй публичные Wi-Fi для переводов
- Переноси монеты перед сменой Telegram
Для операторов узлов:
- Храни private key в HSM (Hardware Security Module)
- Используй отдельный Telegram для управления узлами
- Регулярно обновляй IP whitelist для доступа к узлу
- Мониторь подозрительные транзакции
8. Сравнение с Другими Блокчейнами
Bitcoin
| Параметр | Bitcoin | Montana |
|---|---|---|
| Адрес | SHA256(RIPEMD160(pubkey)) | mt + SHA256(pubkey)[:20] |
| Алгоритм | ECDSA (secp256k1) | ML-DSA-65 (FIPS 204) |
| Quantum | ❌ Vulnerable | ✅ Protected from genesis |
| UX | Seed phrase (12-24 words) | Telegram ID (простота) |
| Migration | Hard fork needed | Not needed — PQ from day 1 |
Ethereum
| Параметр | Ethereum | Montana |
|---|---|---|
| Адрес | Keccak256(pubkey)[-20:] | mt + SHA256(pubkey)[:20] |
| Алгоритм | ECDSA (secp256k1) | ML-DSA-65 (FIPS 204) |
| Quantum | ❌ Vulnerable | ✅ Protected from genesis |
| UX | MetaMask + seed phrase | Telegram ID (простота) |
| Gas fees | Variable, high | None (time-based) |
Solana
| Параметр | Solana | Montana |
|---|---|---|
| Адрес | Ed25519 pubkey (base58) | mt + SHA256(pubkey)[:20] |
| Алгоритм | Ed25519 | ML-DSA-65 (FIPS 204) |
| Quantum | ❌ Vulnerable | ✅ Protected from genesis |
| UX | Phantom wallet | Telegram ID (простота) |
| Speed | ~400ms block time | ~10min T2 slice |
9. Файловая Структура
Montana/
├── Протокол (Rust, production)
│ ├── crypto.rs # ML-DSA-65, ML-KEM-768
│ ├── consensus.rs # ACP consensus
│ └── noise.rs # Hybrid encryption
│
├── Telegram Бот (Python, MAINNET)
│ ├── node_crypto.py # ML-DSA-65 (FIPS 204)
│ ├── time_bank.py # Банк времени
│ ├── montana_db.py # SQLite база
│ └── junomontanaagibot.py # Telegram интеграция
│
└── Документация
├── English/protocol/
│ ├── 001_ACP.md
│ ├── 007_POST_QUANTUM.md
│ └── CRYPTOGRAPHY_SPECIFICATION.md
│
└── Русский/бот/
├── NODE_CRYPTO_SYSTEM.md
├── QUANTUM_TRANSFERS.md
└── ARCHITECTURE_FINAL.md (этот файл)
10. Выводы
Ключевые Особенности Montana
-
Двухуровневая архитектура
- Пользователи: простота (Telegram ID)
- Узлы: безопасность (криптография)
-
Post-quantum from genesis
- Не retrofit, а оригинальный дизайн
- Защита от квантовых компьютеров с первого дня
-
Универсальные переводы
- Любой адрес → Любой адрес
- Telegram ID, криптографический адрес, alias
-
IP independence
- Адрес не зависит от IP
- Защита от IP hijacking
-
Квантовая анонимность
- Публично виден только proof
- Адреса хэшированы
- Суммы скрыты
Философия
Для пользователей:
Ты уже в Montana, если у тебя есть Telegram.
Никаких seed phrases, метамасок, или сложностей.
Для узлов:
Максимальная безопасность.
ML-DSA-65 от genesis.
Post-quantum ACTIVE.
Ɉ Montana — Протокол идеальных денег
Время — единственная реальная валюта
ML-DSA-65 MAINNET — Post-quantum с первого дня
FIPS 204 compliant