Skip to content

Oracle & Randomness (Оракул и случайность)

CashPop выбирает вопрос для каждого Round (раунда) из резервуара, содержащего более 100 000 предварительно отобранных вопросов. Выбор должен быть:

  1. Непредсказуемым до начала Round (чтобы инсайдер не мог заранее скоординировать выбранный ответ).
  2. Проверяемым после завершения Round (чтобы любая третья сторона могла повторно верифицировать выбор).
  3. Устойчивым к манипуляциям при компрометации любого отдельного оракула.

Построение seed (начального значения)

Seed вопроса для Round t:

σt=H(σt1rtDRANDrtTON-VRF)

Где:

  • σ_{t-1} — seed предыдущего Round (обеспечивает причинно-следственную связь).
  • r^{DRAND}_t — последний выходной сигнал маяка от сети публичной случайности DRAND (League of Entropy: Cloudflare, Protocol Labs, EPFL и др.).
  • r^{TON-VRF}_t — выходной сигнал TON-нативного VRF от разрешённого набора валидаторов.

Seed выбирает вопрос следующим образом:

qt=Q[σtmod|Q|]

Почему гибрид DRAND + TON-VRF

Один источник случайности имеет единую точку компрометации. Объединяя два независимо администрируемых источника через конкатенацию и хеширование:

  • Злоумышленник, контролирующий только DRAND, не может исказить seed.
  • Злоумышленник, контролирующий только TON-VRF, не может исказить seed.
  • Злоумышленнику потребуется скомпрометировать оба источника одновременно в течение одного Round (вероятность исчезающе мала для двух независимых систем с пороговой защитой).

DRAND использует BLS-пороговые подписи на 10+ публичных валидаторах с ротацией drand-ключей. TON-VRF использует пороговую подпись от избранного набора валидаторов TON. Две системы не имеют общих операторов, инфраструктуры или цепочки поставок программного обеспечения.

Детали маяка DRAND

  • Частота маяка: каждые 3 секунды (основная сеть League of Entropy).
  • Размер маяка: 32 байта.
  • Верификация: подпись BLS12-381, публичный ключ опубликован; любой может верифицировать маяк офлайн.
  • Lookback (откат): CashPop использует последний маяк с временной меткой ≥ времени начала Round.

Детали TON-VRF

  • Реализация: производная от BLS-подписи валидатора на хеше начала Round.
  • Верификация: BLS-подпись против опубликованной ротации публичных ключей валидаторов.
  • Lookback: выходной сигнал VRF, соответствующий мастерчейн-блоку на момент начала Round.

Конвейер генерации резервуара вопросов

Ансамбль LLM {L1, L2, L3, ...} генерирует кандидатов

Анти-предвзятая обработка (удаление лингвистического прайминга)

Калибровочный претест (симулятор синтетической популяции оценивает распределение ответов ρ̂)

Фильтр: |ρ̂ - 0.5| > τ → отбрасывается

Контроль качества с участием человека (выборка 1% кандидатов)

Хеширование и фиксация в дереве Merkle резервуара

Пакет резервуара публикуется в блокчейне (фиксируется ежемесячно)

Ежемесячная публикация резервуара означает, что пул вопросов является публично проверяемым: любой может убедиться, что вопрос q_t, выбранный на дату d, действительно входил в резервуар, зафиксированный до d.

Зачем нужна анти-предвзятая обработка

Наивно сгенерированные вопросы часто содержат паттерны прайминга из обучающих данных LLM — западные культурные допущения, гендерно-окрашенный язык, неявные возрастные отсылки. Мы переписываем кандидатов для удаления такого прайминга (методики из Bolukbasi et al., 2016; Caliskan et al., 2017). Цель — вопросы, распределение ответов на которые зависит от опрашиваемой популяции, а не от формулировки вопроса.

Зачем нужен калибровочный претест

Игра Beauty Contest (Конкурс красоты) наиболее информативна, когда стратегическая неопределённость максимальна — то есть когда ожидаемый ответ популяции максимально близок к 50/50. Мы отбрасываем низкоэнтропийные вопросы (где большинство популяций очевидно выберут одну сторону), поскольку они делают игру тривиальной. Порог τ находится в диапазоне [0.05, 0.15] в зависимости от режима игры.

Режимы отказа и корректная деградация

ОтказОбнаружениеРеакция
Тайм-аут маяка DRANDПроверка работоспособности DRAND (каждые 30 с)Приостановка Round, оповещение операторов
Тайм-аут валидатора TON-VRFМониторинг мастерчейна TONПриостановка Round, оповещение операторов
Десинхронизация резервуараНесовпадение корня MerkleОстановка Round; ручная ресинхронизация из канонического хранилища
Отравление конвейера LLMСтатистическое обнаружение аномалий на калибровочных распределенияхКарантин пакета; проверка человеком

Система отказоустойчива: при любом сбое оракула Round приостанавливаются, расчёты не производятся, вознаграждения не выплачиваются. Заблокированные средства могут быть возвращены пользователям голосованием аварийного мультиподписи.

Контрольный список проверяемости для скептиков

Сторонний аудитор в любое время может:

  1. Получить историю seed в блокчейне.
  2. Получить опубликованный корень Merkle резервуара за соответствующий месяц.
  3. Получить соответствующий маяк DRAND и выходной сигнал TON-VRF для временной метки данного Round.
  4. Пересчитать σ_t = H(σ_{t-1} ‖ DRAND ‖ TON-VRF) и проверить его соответствие зафиксированному в блокчейне.
  5. Пересчитать q_t = Reservoir[σ_t mod |Q|] и проверить его соответствие доставленному вопросу.

Если какой-либо шаг не выполнен, Round признаётся недействительным, и подаётся спор.

Built on TON.