montana/Русский/Бот/АРХИТЕКТУРА_ФИНАЛ.md

13 KiB
Raw Permalink Blame History

Финальная Архитектура 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

  1. Двухуровневая архитектура

    • Пользователи: простота (Telegram ID)
    • Узлы: безопасность (криптография)
  2. Post-quantum from genesis

    • Не retrofit, а оригинальный дизайн
    • Защита от квантовых компьютеров с первого дня
  3. Универсальные переводы

    • Любой адрес → Любой адрес
    • Telegram ID, криптографический адрес, alias
  4. IP independence

    • Адрес не зависит от IP
    • Защита от IP hijacking
  5. Квантовая анонимность

    • Публично виден только proof
    • Адреса хэшированы
    • Суммы скрыты

Философия

Для пользователей:

Ты уже в Montana, если у тебя есть Telegram.
Никаких seed phrases, метамасок, или сложностей.

Для узлов:

Максимальная безопасность.
ML-DSA-65 от genesis.
Post-quantum ACTIVE.

Ɉ Montana — Протокол идеальных денег

Время — единственная реальная валюта

ML-DSA-65 MAINNET — Post-quantum с первого дня

FIPS 204 compliant