# TIME_BANK — Банк Времени Montana **Техническая Спецификация v3.0** **Дата:** Январь 2026 **Автор:** Alejandro Montana --- ## Abstract TIME_BANK — протокол эмиссии монет времени (金元Ɉ) на основе доказанного присутствия. Единственная валюта, где эмиссия ограничена **временем как физическим ресурсом**. **Ключевая формула:** ``` 1 секунда присутствия = 1 Ɉ × halving_coefficient ``` **Свойства:** - Динамическая эмиссия (зависит от участников) - Халвинг каждые τ₄ (4 года) - Банк подтверждает время, вычитает свои секунды --- # ЧАСТЬ I: ЭКОНОМИЧЕСКАЯ МОДЕЛЬ ## 1. Определение 金元Ɉ **金元** (jīn yuán) — буквально "золотой юань". **Ɉ** (Unicode U+0248) — Temporal Time Unit. ``` 金元Ɉ = Время, доказанное присутствием ``` > *"Время — единственный ресурс, распределённый одинаково между всеми людьми."* ### 1.1 Фундаментальное свойство ``` lim(evidence → ∞) 1 Ɉ → 1 секунда ∀t: Trust(t) < 1 ``` **Ɉ не равен секунде.** Ɉ асимптотически приближается к секунде по мере накопления доказательств. | Доказательства | Точность | Доверие | |----------------|----------|---------| | 1 подпись | ±10 минут | ~0.1 | | 1 τ₂ (10 мин) | ±1 минута | ~0.5 | | 1 τ₃ (14 дней) | ±1 секунда | ~0.99 | | 1 τ₄ (4 года) | ±0.1 секунды | ~0.9999 | --- ## 2. Временные координаты Montana использует иерархию временных единиц: | Единица | Длительность | Назначение | |---------|--------------|------------| | **τ₁** | 1 минута | Подпись присутствия (ML-DSA-65) | | **τ₂** | 10 минут | Слайс (блок эмиссии) | | **τ₃** | 14 дней | Чекпоинт (2,016 τ₂) | | **τ₄** | 4 года | Эпоха (104 τ₃) — **ХАЛВИНГ** | ``` τ₄ содержит 104 × τ₃ τ₃ содержит 2,016 × τ₂ τ₂ содержит 10 × τ₁ ``` **Иерархия:** ``` 1 τ₄ = 104 τ₃ = 209,664 τ₂ = 2,096,640 τ₁ ``` --- ## 3. Механизм эмиссии ### 3.1 Принцип работы **Банк Времени** — не участник, а **валидатор времени**: ``` Банк говорит: "Прошло ровно 10 минут (600 секунд)" Банк всегда присутствует 600 секунд за τ₂ Банк вычитает свои секунды из эмиссии ``` ### 3.2 Формула эмиссии ```python # 1. Считаем всех участников (включая банк) total_seconds = sum(user1, user2, ..., user_N) + bank_600_seconds # 2. Банк вычитает себя total_seconds -= bank_600_seconds # 3. Применяем халвинг emission = total_seconds × halving_coefficient(τ₄_count) # Упрощённо: emission = sum(только_пользователи) × halving_coefficient ``` ### 3.3 Динамическая эмиссия Эмиссия **не фиксированная**, а зависит от участников: | Участники | Секунды за τ₂ | Эмиссия (τ₄=0) | Эмиссия (τ₄=1) | |-----------|---------------|----------------|----------------| | 1 | 600 | 600 Ɉ | 300 Ɉ | | 10 | 6,000 | 6,000 Ɉ | 3,000 Ɉ | | 100 | 60,000 | 60,000 Ɉ | 30,000 Ɉ | | 1,000 | 600,000 | 600,000 Ɉ | 300,000 Ɉ | **Чем больше участников, тем больше эмиссия.** --- ## 4. TIME_BANK Reserve — 21 млн минут ### 4.1 Фундаментальный принцип **TIME_BANK имеет конечный резерв времени:** ``` BANK_TOTAL_MINUTES = 21,000,000 минут BANK_TOTAL_SECONDS = 1,260,000,000 секунд ``` > *21 миллион минут — как 21 миллион Bitcoin. Конечный ресурс.* ### 4.2 Расход резерва Банк **всегда тратит 10 минут за каждый T2**, подтверждая что прошло ровно 10 минут: ```python # Каждый T2 (10 минут) bank_seconds_spent += 600 # Банк тратит 10 минут из резерва # Проверка исчерпания if bank_seconds_spent >= BANK_TOTAL_SECONDS: bank_exhausted = True # Oracle Mode ``` ### 4.3 График исчерпания | Параметр | Значение | |----------|----------| | Резерв | 21,000,000 минут | | Расход/T2 | 10 минут | | Всего T2 | 2,100,000 | | Срок | **~40 лет** | ``` 21,000,000 минут ÷ 525,600 мин/год = 39.95 лет ``` **По годам:** | Год | Потрачено | Осталось | % резерва | |-----|-----------|----------|-----------| | 0 | 0 | 21,000,000 | 100% | | 4 | 2,102,400 | 18,897,600 | 90% | | 10 | 5,256,000 | 15,744,000 | 75% | | 20 | 10,512,000 | 10,488,000 | 50% | | 30 | 15,768,000 | 5,232,000 | 25% | | 40 | 21,024,000 | 0 | 0% | ### 4.4 Oracle Mode Когда резерв исчерпан (~40 лет), TIME_BANK переходит в **Oracle Mode**: ``` ╔═══════════════════════════════════════════════════════════╗ ║ ⏳ TIME_BANK RESERVE EXHAUSTED — ORACLE MODE ║ ╚═══════════════════════════════════════════════════════════╝ Банк потратил все 21 млн минут Теперь чистый оракул — продолжает верифицировать время ``` **В Oracle Mode банк:** - ✅ Продолжает верифицировать T2 (подтверждать время) - ✅ Участники продолжают получать монеты за присутствие - ❌ Банк больше не "тратит" из резерва - 📡 Становится чистым временным оракулом ### 4.5 Связь с халвингом Резерв и халвинг — **независимые механизмы**: | Механизм | Что ограничивает | Когда срабатывает | |----------|------------------|-------------------| | **Резерв 21M** | Время жизни банка как эмитента | ~40 лет | | **Халвинг** | Эмиссию за секунду | Каждые 4 года (τ₄) | ``` Год 0-4: Резерв 100%, Халвинг 1.0x Год 4-8: Резерв 90%, Халвинг 0.5x Год 8-12: Резерв 75%, Халвинг 0.25x ... Год 36-40: Резерв 10%, Халвинг 0.001x Год 40+: Резерв 0%, Oracle Mode ``` ### 4.6 Почему 21 миллион? ``` Bitcoin: 21,000,000 BTC — ограничено математикой Montana: 21,000,000 минут — ограничено временем 21M — символ конечности. Время банка конечно. Время участников — бесконечно. ``` --- ## 5. Халвинг (Halving) ### 5.1 Механизм Каждые **τ₄ (4 года)** эмиссия делится на 2: ```python halving_coefficient(τ₄_count) = 1.0 / (2 ** τ₄_count) ``` ### 5.2 График эмиссии | Период | τ₄ | Коэффициент | За 1 секунду | Эмиссия за τ₂ (100 участников) | |--------|-----|-------------|--------------|--------------------------------| | 0-4 года | 0 | 1.0 | 1.0 Ɉ | 60,000 Ɉ | | 4-8 лет | 1 | 0.5 | 0.5 Ɉ | 30,000 Ɉ | | 8-12 лет | 2 | 0.25 | 0.25 Ɉ | 15,000 Ɉ | | 12-16 лет | 3 | 0.125 | 0.125 Ɉ | 7,500 Ɉ | | 16-20 лет | 4 | 0.0625 | 0.0625 Ɉ | 3,750 Ɉ | ### 5.3 Сравнение с Bitcoin | Параметр | Bitcoin | 金元Ɉ | |----------|---------|-------| | Интервал халвинга | 210,000 блоков (~4 года) | τ₄ (ровно 4 года) | | Механизм | Деление награды на 2 | Деление эмиссии на 2 | | Детерминированность | Количество блоков | Физическое время | | Ускорение | Можно (больше хешрейта) | **Невозможно** | **Время нельзя ускорить, купить или подделать.** --- ## 6. Распределение ### 6.1 Параллельная эмиссия Каждый участник получает монеты **параллельно** за своё присутствие: ``` User A: 450 сек × 1.0 = 450 Ɉ User B: 600 сек × 1.0 = 600 Ɉ User C: 150 сек × 1.0 = 150 Ɉ ─────────────────────────────── Эмиссия: 1,200 Ɉ Распределено: 1,200 Ɉ Резерв: 0 (нет резерва!) ``` **НЕТ лотереи, НЕТ резерва** — всё распределяется участникам. ### 6.2 Принцип "личного банка времени" ``` ┌─────────────────────────────────────────────────────────────┐ │ ПАРАЛЛЕЛЬНАЯ ЭМИССИЯ │ ├─────────────────────────────────────────────────────────────┤ │ User A │ Присутствовал 450 сек │ +450 Ɉ │ │ User B │ Присутствовал 600 сек │ +600 Ɉ │ │ User C │ Присутствовал 150 сек │ +150 Ɉ │ │ Банк │ 600 сек (вычитается) │ +0 Ɉ │ └─────────────────────────────────────────────────────────────┘ Каждый получает из своего "личного банка времени" Сеть распределяет параллельно, не из общего пула ``` --- ## 7. Свойства 金元Ɉ ### 7.1 Неподделываемость ``` Подделать Ɉ = Подделать время Подделать время = Нарушить физику ∴ Ɉ неподделываем ``` ### 7.2 Неинфлируемость ``` Эмиссия Ɉ ограничена временем Все люди имеют одинаковое количество времени Халвинг делит эмиссию на 2 каждые 4 года ∴ Ɉ распределён справедливо и предсказуемо ``` ### 7.3 Верифицируемость Каждый Ɉ имеет доказательство: ``` ├── Подпись присутствия (ML-DSA-65) ├── Включение в presence_root (Merkle) ├── Подтверждение в таймчейне (хеш-цепь) └── Аттестация сетью (P2P) ``` --- ## 8. Формула ценности ``` V(Ɉ) = f(доказательства) × g(время) × h(участники) × k(халвинг) где: f(доказательства) → 1 при evidence → ∞ g(время) — монотонно возрастает h(участники) — сетевой эффект k(халвинг) — дефляционная компонента ``` **Ценность Ɉ растёт с:** 1. Количеством накопленных доказательств 2. Длительностью существования сети 3. Числом участников сети 4. Каждым халвингом (дефицит) --- # ЧАСТЬ II: ТЕХНИЧЕСКАЯ РЕАЛИЗАЦИЯ ## 9. Архитектура TIME_BANK ### 9.1 Основные компоненты ``` ┌─────────────────────────────────────────────────────────────┐ │ TIME_BANK v3.0 │ ├─────────────────────────────────────────────────────────────┤ │ Protocol │ Константы протокола │ │ halving() │ Коэффициент халвинга │ │ TimeBank │ Основной класс эмиссии │ │ PresenceCache │ Кэш присутствия участников │ │ _finalize_t2() │ Завершение слайса, начисление монет │ │ Presence Proof │ ML-DSA-65 подписи присутствия │ └─────────────────────────────────────────────────────────────┘ ``` ### 9.2 Константы протокола ```python class Protocol: VERSION = "3.0" # Сеть NODES_COUNT = 5 # 5 узлов Montana BANK_PRESENCE_PER_T2 = 600 # Банк всегда 600 сек # TIME_BANK RESERVE — 21 млн минут (~40 лет) BANK_TOTAL_MINUTES = 21_000_000 # 21 млн минут BANK_TOTAL_SECONDS = 1_260_000_000 # 21M × 60 # Временные координаты TAU1_INTERVAL_SEC = 60 # τ₁ = 1 минута T2_DURATION_SEC = 10 * 60 # τ₂ = 10 минут TAU3_DURATION_SEC = 14 * 24 * 60 * 60 # τ₃ = 14 дней TAU4_DURATION_SEC = 4 * 365 * 24 * 60 * 60 # τ₄ = 4 года # Иерархия T2_PER_TAU3 = 2016 # τ₂ в τ₃ TAU3_PER_YEAR = 26 # τ₃ в году TAU3_PER_TAU4 = 104 # τ₃ в τ₄ # Монеты COINS_PER_SECOND = 1 # 1 секунда = 1 монета INACTIVITY_LIMIT_SEC = 3 * 60 # 3 минуты без активности ``` --- ## 10. Халвинг ### 10.1 Реализация ```python def halving_coefficient(tau4_count: int) -> float: """ Коэффициент халвинга — деление на 2 каждые τ₄ Returns: 1.0 / (2 ** tau4_count) Примеры: halving_coefficient(0) → 1.0 halving_coefficient(1) → 0.5 halving_coefficient(2) → 0.25 halving_coefficient(3) → 0.125 """ return 1.0 / (2 ** tau4_count) ``` ### 10.2 Использование ```python # В момент завершения τ₂ coef = halving_coefficient(self.tau4_count) # Эмиссия с халвингом emission = total_users_seconds × coef # Распределение с халвингом user_coins = user_seconds × coef ``` --- ## 11. Presence Proof — Доказательство присутствия ### 11.1 Криптография ML-DSA-65 | Параметр | Значение | |----------|----------| | Алгоритм | ML-DSA-65 (Dilithium) | | Стандарт | FIPS 204 | | Уровень | NIST Level 3 (128-bit post-quantum) | | Private Key | 4032 байт | | Public Key | 1952 байт | | Signature | 3309 байт | ### 11.2 Подпись присутствия Каждую **τ₁ (1 минуту)** узел подписывает: ```python # Формат сообщения message = f"MONTANA_PRESENCE_V1:{timestamp}:{prev_hash}:{pubkey}:{t2_index}" # POST-QUANTUM подпись signature = ML_DSA_65.sign(private_key, message.encode()) # Hash для цепочки proofs proof_hash = SHA256(f"{message}:{signature}") ``` ### 11.3 Цепочка доказательств ``` ┌─────────────────────────────────────────────────────────────┐ │ PRESENCE PROOF CHAIN │ ├─────────────────────────────────────────────────────────────┤ │ Genesis │ prev_hash = "0000...0000" │ │ Proof #1 │ prev_hash = Genesis.hash │ │ Proof #2 │ prev_hash = Proof#1.hash │ │ ... │ ... │ └─────────────────────────────────────────────────────────────┘ ``` --- ## 12. Финализация τ₂ ### 12.1 Алгоритм ```python def _finalize_t2(self): """ Завершает T2, начисляет монеты с халвингом Шаги: 1. Считаем сумму всех секунд присутствия 2. Банк вычитает свои 600 секунд 3. Применяем халвинг 4. Распределяем каждому """ # 1. Коэффициент халвинга coef = halving_coefficient(self.tau4_count) # 2. Сумма секунд участников total_users_seconds = sum(user.t2_seconds for user in users) # 3. Банк подтверждает 600 секунд bank_seconds = 600 # 4. Эмиссия = сумма × халвинг emission = total_users_seconds × coef # 5. Распределяем каждому for user in users: coins = user.t2_seconds × coef user.balance += coins ``` ### 12.2 Проверка τ₃ и τ₄ ```python # Каждые 2016 τ₂ = τ₃ checkpoint if t2_count % 2016 == 0: tau3_count += 1 log("τ₃ CHECKPOINT") # Каждые 104 τ₃ = τ₄ epoch — ХАЛВИНГ! if tau3_count % 104 == 0: tau4_count += 1 log("🔥 τ₄ HALVING — Эмиссия ÷ 2") ``` --- ## 13. Интеграция с Montana ### 13.1 Философия ``` Montana = Организм ├── TIME_BANK = Орган (эмиссия монет времени) ├── ML-DSA-65 = Иммунная система (пост-квантовая защита) ├── 3-Mirror = Нервная система (синхронизация узлов) ├── Юнона (бот) = Лицо (интерфейс с пользователем) └── Гиппокамп = Память (внешнее хранилище событий) ``` ### 13.2 Юнона — Лицо Montana **Бот отражает всё на "лице":** ```python # Юнона показывает баланс @bot.message_handler(commands=['balance']) async def show_balance(message): balance = time_bank.balance(user_id) await bot.reply(f"💰 Баланс: {balance} Ɉ") # Юнона показывает присутствие @bot.message_handler(commands=['presence']) async def show_presence(message): info = time_bank.get(user_id) await bot.reply(f"⏱️ Присутствие: {info['seconds']} сек") # Юнона показывает халвинг @bot.message_handler(commands=['halving']) async def show_halving(message): stats = time_bank.stats() coef = stats['halving_coefficient'] await bot.reply(f"📊 Халвинг: {coef:.4f}x") ``` --- ## 14. Защита от атак | Атака | Механизм защиты | Статус | |-------|-----------------|--------| | Quantum | ML-DSA-65 post-quantum | ✅ | | IP hijacking | Криптографические адреса | ✅ | | Harvest now decrypt later | ML-DSA-65 с genesis | ✅ | | Sybil | FIDO2 биометрия | ⚠️ Mock | | Bot | Случайные интервалы проверки | ⚠️ Частично | | Time manipulation | Физические ограничения | ✅ | --- ## 15. Сравнение с другими системами | Система | Ограничение | Можно ускорить? | Справедливость | |---------|-------------|-----------------|----------------| | Bitcoin | Вычисления | ✅ Да (хешрейт) | Неравномерно | | Ethereum | Stake | ✅ Да (купить) | Плутократия | | 金元Ɉ | **Время** | ❌ **НЕТ** | **Равномерно** | ``` Золото ограничено в пространстве → добыча Bitcoin ограничен вычислениями → майнинг 金元Ɉ ограничен временем → присутствие ``` **Время нельзя украсть, подделать или ускорить.** --- ## 16. Примеры использования ### 16.1 Начисление монет ```python from time_bank import get_time_bank bank = get_time_bank() # Начать присутствие bank.start(user_id="123456789", addr_type="telegram") # Активность каждые N секунд bank.activity(user_id="123456789") # Каждые 600 секунд автоматически начисляются монеты # (с учётом халвинга) # Завершить присутствие bank.end(user_id="123456789") # Проверить баланс balance = bank.balance(user_id="123456789") print(f"Баланс: {balance} Ɉ") ``` ### 16.2 Перевод монет ```python # Перевод от Alice к Bob result = bank.send( from_addr="alice_123", to_addr="bob_456", amount=100 ) if result['success']: print(f"TX: {result['proof']}") ``` ### 16.3 Статистика ```python stats = bank.stats() print(f"Эмиссия/T2: {stats['emission_per_t2']} Ɉ") print(f"Халвинг: {stats['halving_coefficient']:.4f}x") print(f"τ₃: {stats['tau3_count']}") print(f"τ₄: {stats['tau4_count']}") print(f"Год: {stats['current_year']}") ``` --- ## 16A. HTTP API для iOS/Web ### Эндпоинты **Баланс** — Получить баланс по Telegram ID: ``` GET http://72.56.102.240/api/balance/{tg_id} Response: { "tg_id": "123456789", "balance": 1500, "confirmed": 1500, "pending": 0, "slices": { "tau1": 25.0, // 1500 / 60 "tau2": 2.5, // 1500 / 600 "tau3": 0.00124, // 1500 / 1209600 "tau4": 0.0000119 // 1500 / 126230400 }, "network": { "total_reserve": 21000000, "total_mined": 5000, "remaining": 20995000 } } ``` **Присутствие** — Регистрация секунд присутствия: ``` POST http://72.56.102.240/api/presence Headers: Content-Type: application/json X-Device-ID: {tg_id} Body: { "seconds": 60 // 1-3600 } Response: { "success": true, "added": 60, "balance": 1560, "tg_id": "123456789" } ``` ### Архитектура синхронизации ``` ┌─────────────┐ POST /api/presence ┌──────────────────┐ │ iOS App │ ──────────────────────────▶│ Amsterdam Proxy │ │ (Montana) │ │ 72.56.102.240 │ └─────────────┘ └────────┬─────────┘ │ │ │ GET /api/balance/{tg_id} │ proxy │ ▼ │ ┌──────────────────┐ └───────────────────────────────────▶│ TIME_BANK Server │ │ 176.124.208.93 │ │ :8081 │ └──────────────────┘ ``` **Принцип:** 1. Устройство накапливает секунды локально 2. Каждые 30 сек отправляет дельту на сервер 3. Сервер кредитует секунды в TIME_BANK 4. Баланс синхронизируется по `tg_id` между устройствами **Важно:** Баланс берётся **максимальный** — если на сервере больше, используется серверный; если локально больше, синхронизируется на сервер. --- ## 17. Дорожная карта ### v3.0 (текущая) ✅ - [x] Динамическая эмиссия - [x] Халвинг через τ₄ - [x] ML-DSA-65 подписи - [x] τ₃ checkpoints - [x] Удалена лотерея 70/20/10 - [x] Удалён epoch coefficient ### v4.0 (планируется) - [ ] FIDO2 биометрия (не Mock) - [ ] Улучшенная защита от ботов - [ ] Cross-chain bridges - [ ] Смарт-контракты на Ɉ --- ## 18. Заключение 金元Ɉ — **первая валюта, основанная на времени как физическом ресурсе**. **Ключевые преимущества:** 1. **Справедливость** — у всех одинаковое количество времени 2. **Неподделываемость** — время нельзя подделать 3. **Предсказуемость** — халвинг каждые 4 года 4. **Пост-квантовая защита** — ML-DSA-65 5. **Децентрализация** — 5 узлов, 3-Mirror failover **Философия:** > Время — единственный ресурс, который нельзя украсть, купить или ускорить. > 金元Ɉ оцифровывает это присутствие и делает его валютой. --- ``` Alejandro Montana TIME_BANK v3.0 Январь 2026 Ничто_Nothing_无_金元Ɉ ```