montana/Русский/Экономика/банк_времени/код/protocol.py

43 lines
1.8 KiB
Python
Raw Permalink 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.

"""
protocol.py — Константы протокола TIME_BANK v3.0
Montana Protocol
Банк Времени — орган верификации эмиссии монет времени
"""
class Protocol:
"""Константы протокола TIME_BANK v3.0"""
VERSION = "3.0"
# Сеть
NODES_COUNT = 5 # 5 узлов Montana
BANK_PRESENCE_PER_T2 = 600 # Банк всегда присутствует 600 сек (10 мин)
# Временные координаты (Temporal Coordinates)
TAU1_INTERVAL_SEC = 60 # τ₁ = 1 минута — интервал подписи присутствия
T2_DURATION_SEC = 10 * 60 # τ₂ = 10 минут = 600 секунд (slice/block)
TAU3_DURATION_SEC = 14 * 24 * 60 * 60 # τ₃ = 14 дней = 1,209,600 сек (checkpoint)
TAU4_DURATION_SEC = 4 * 365 * 24 * 60 * 60 # τ₄ = 4 года = 126,144,000 сек (epoch)
# Иерархия
T2_PER_TAU3 = 2016 # 2016 × τ₂ в τ₃ (14 дней / 10 минут)
TAU3_PER_YEAR = 26 # 26 × τ₃ в году (365 / 14)
TAU3_PER_TAU4 = 104 # 104 × τ₃ в τ₄ (4 года)
# Другие временные параметры
INACTIVITY_LIMIT_SEC = 3 * 60 # 3 минуты без активности = пауза
TICK_INTERVAL_SEC = 1 # Интервал обновления
# Монеты
COINS_PER_SECOND = 1 # 1 секунда = 1 монета (с халвингом)
# Presence Proof
PRESENCE_PROOF_VERSION = "MONTANA_PRESENCE_V1"
GENESIS_HASH = "0" * 64 # Genesis prev_hash
# Экспорт
__all__ = ['Protocol']