Техническая спецификация блокчейн‑сети GoodLuckCoin
на лгоритме консенсуса Proof‑of‑Fortune(версия 1.0)
Мнение автора может не совпадать с мнением редакции
Автор: Морыганов Дмитрий АндреевичДата публикации: 17 декабря 2025 г. Статус документа: финальная версия
1. Общие положения
1.1. Назначение документа
Документ определяет:
- архитектуру блокчейн‑сети GoodLuckCoin (GLC);
- принципы работы алгоритма консенсуса Proof‑of‑Fortune (PoF);
- форматы данных и протоколы взаимодействия;
- экономические и защитные механизмы системы.
1.2. Термины и определения
- GLC — нативный токен сети GoodLuckCoin.
- PoF — алгоритм консенсуса Proof‑of‑Fortune.
- VRF — Verifiable Random Function (проверяемая случайная функция).
- Смарт‑контракт — программный код, исполняющий логику сети на TVM.
- Участник — владелец ≥ 10 GLC, участвующий в раунде PoF.
- Победитель раунда — участник, выбранный для формирования блока.
- TON — блокчейн‑экосистема, используемая как инфраструктурная платформа.
1.3. Сокращения
- TVM — TON Virtual Machine.
- Jetton — стандарт токенов в экосистеме TON.
- Merkle Root — корень дерева Меркла.
- sk — приватный ключ участника.
- public_key — публичный ключ участника.
2. Архитектура сети
2.1. Компоненты системы
- Ядро PoF: модуль генерации VRF;механизм выбора победителя; система верификации заявок.
- Смарт‑контракты: контракт участия в раунде; контракт формирования блока; контракт‑арбитр для разрешения споров.
- Хранилище данных:блокчейн TON (основное хранилище);TON Storage (для блоков > 4 КБ).
- Интерфейс пользователя:кошельки TON (Tonkeeper, MyTonWallet);веб‑приложение GLC.
2.2. Интеграция с TON
- TVM — исполнение смарт‑контрактов.
- TON Storage — хранение чанков блоков.
- Блокчейн TON — фиксация транзакций и dataroot.
- Стандарт Jetton — эмиссия и оборот GLC.
3. Алгоритм консенсуса Proof‑of‑Fortune
3.1. Принципы работы
- Децентрализация: отсутствие выделенных валидаторов.
- Энергоэффективность: нет вычислительных гонок (как в PoW).
- Инклюзивность: порог участия — 10 GLC без стейкинга.
- Доказуемая честность: выбор победителя на основе VRF.
- Мгновенная финализация: блок считается действительным после проверки смарт‑контрактом.
3.2. Этапы раунда
- Инициализация:смарт‑контракт публикует:round_id;vrf_seed (на основе хэша последнего блока TON);минимальный порог участия: 10 GLC.
- round_id;
- vrf_seed (на основе хэша последнего блока TON);
- минимальный порог участия: 10 GLC.
- Участие пользователя:участник с балансом ≥ 10 GLC:локально вычисляет vrf_output = VRF(sk, vrf_seed);генерирует proof (доказательство корректности VRF);подписывает транзакцию своим sk;отправляет в сеть:vrf_output, proof, signature;public_key, glc_id (идентификатор в GLC).
- Верификация смарт‑контрактом:проверка баланса (≥ 10 GLC);верификация signature по public_key;подтверждение proof относительно vrf_seed и public_key.
- Выбор победителя:контракт выбирает участника с минимальным vrf_output (или его хэшем).победитель идентифицируется по public_key и glc_id.
- Формирование блока:смарт‑контракт:собирает данные раунда (участники, победители, награды);формирует блок (см. раздел 5);подписывает блок от имени победителя;фиксирует блок в цепочке через prev_block_hash.
- Разрешение споров:любой участник может подать доказательство в контракт‑арбитр; при выявлении несоответствия блок помечается как спорный (dispute_flag = true).
4. Форматы данных
4.1. Транзакция участника
{ "round_id": uint64, "vrf_output": bytes32, "proof": bytes64, "signature": bytes64, "public_key": bytes32, "glc_id": string }4.2. Структура блока
Header:
- room_id: string;
- round: uint64;
- timestamp: uint64 (Unix time);
- prev_block_hash: bytes32;
- vrf_seed: bytes32;
- vrf_output: bytes32;
- winner_public_key: bytes32;
- winner_glc_id: string;
- signature: bytes64 (подпись смарт‑контракта);
- merkle_root: bytes32;
- dispute_flag: bool.
Body:
- participants: array
(список glc_id); - winners: array
(индексы победителей); - selection_type: string (например, «pairs», «groups»);
- glc_reward: uint64 (награда в GLC).
5. Механизмы безопасности
5.1. Криптографическая защита
- VRF: гарантирует невозможность подделки vrf_output без sk.
- Подпись транзакции: подтверждает авторство заявки.
- Merkle Root: обеспечивает целостность списка участников.
5.2. Экономические стимулы
- Награды: выплачиваются победителю в GLC.
- Штрафы: применяются к участникам со спорными блоками (часть наград перераспределяется).
- NFT‑талисманы: дают бонус к вероятности выбора (коэффициент ≤ 1.5).
5.3. Защита от атак
- DoS‑атаки: ограничение числа заявок на раунд.
- Подмена ключей: верификация public_key через signature.
- Двойная отправка: проверка уникальности round_id и glc_id.
6. Экономическая модель
6.1. Токен GLC
- Стандарт: Jetton (TON).
- Эмиссия: фиксированная, регулируется смарт‑контрактом.
- Назначение: оплата комиссий, награды, участие в раундах.
6.2. Награды и комиссии
- Награда победителю: 50 GLC за блок.
- Комиссия за транзакцию: 0.1 GLC.
- Штраф за спорный блок: 10 GLC (перераспределяется между участниками).
6.3. Порог участия
- Минимальный баланс: 10 GLC (не блокируется).
- Доступ: любой владелец ≥ 10 GLC может участвовать в раунде.
7. Интеграция с экосистемой TON
7.1. Используемые компоненты
- TVM: исполнение смарт‑контрактов GLC.
- TON Storage: хранение чанков больших блоков.
- Кошельки TON: аутентификация участников.
- Блокчейн TON: фиксация транзакций и состояния сети GLC.
7.2. Взаимодействие
- Хэш блока TON → источник vrf_seed.
- Jetton‑токены → оборот GLC.
- TVM‑смарт‑контракты → логика PoF.
0