ORACULUM
RU EN
Записать пророчество

Как это работает

ORACULUM превращает предсказание в объект, который нельзя подделать задним числом. Вы пишете, что произойдёт, и к какому сроку. Текст уходит в блокчейн биткоина как Ordinals-инскрипция и остаётся там навсегда — вместе с датой записи, заверенной не нами, а сетью.

Смысл именно в этом. Задним числом легко сказать «я же говорил». Инскрипция не даёт: у неё есть блок, у блока — время, и переписать его нельзя ни автору, ни администрации сайта.

Четыре шага

  1. Формулируете. Текст до 420 символов и дата, к которой всё должно случиться. Максимальный горизонт — 10 лет.
  2. Платите. Мы показываем одноразовый адрес и точную сумму с полной расшифровкой. Никаких регистраций и привязки карт.
  3. Мы чеканим. Дождавшись, пока платёж попадёт в блок, отправляем две транзакции — commit и reveal. Готовая инскрипция приходит на ваш адрес: она ваша, мы к ней доступа не имеем.
  4. Ждём часа икс. После наступления срока пророчество попадает в раздел «Час икс», а вердикт — в «Кто был прав».

Почему две транзакции

Так устроен протокол Ordinals. Первая транзакция (commit) переводит монеты на специальный taproot-адрес, в дерево скриптов которого зашит ваш текст. Вторая (reveal) тратит этот выход и тем самым раскрывает содержимое — оно попадает в свидетель транзакции и навсегда остаётся в блокчейне. Сама инскрипция «сидит» на одном конкретном сатоши, который уезжает вам.

Сколько это стоит

Сумма складывается из четырёх частей, и все они видны на странице оплаты:

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

Кто решает, сбылось ли

Честно с самого начала: полностью автоматически проверить произвольное предсказание невозможно. «Первая страна ЕС добавит биткоин в резервы» — это про понимание новостей, а не про запрос к базе данных. Об это упираются все рынки предсказаний в мире, и волшебного решения ни у кого нет. Поэтому здесь три слоя, от самого надёжного к самому спорному.

1. Машинное правило — вердикт без людей

Часть пророчеств можно посчитать. Если при записи выбрать правило вроде «цена биткоина на день срока выше 250 000 $», сайт в назначенный день сам сходит к источнику, снимет замер и вынесет вердикт — с числом и ссылкой, которую можно перепроверить. Никакого нашего мнения в этом нет.

2. Критерий, замороженный вместе с пророчеством

Для всего остального автор пишет словами, чем мерить: какой источник, что считать исполнением. Эта строка уходит в блокчейн вместе с текстом и застывает так же намертво. Это важнее, чем кажется: спорят обычно не о фактах, а о том, что считалось за победу. Когда критерий записан заранее и неизменяем, передвинуть ворота задним числом не может никто — ни автор, ни мы.

3. Голос сообщества и решение редакции

Когда срок вышел, пророчество попадает в «Час икс». Голосовать можно подписью кошелька, и учитываются только адреса, у которых есть своё пророчество в блокчейне. Одной подписи было бы мало: биткоин-адреса бесплатны и бесконечны, накрутить их можно сколько угодно. А вот чеканка стоит денег — и именно это делает голос чего-то стоящим. Судят те, кто сам играет.

Итоговый вердикт выносит редакция и обязана приложить проверяемый источник. Исходов три: сбылось, не сбылось и не разобрать — последний для формулировок, которые нельзя проверить однозначно. Он не даёт очков, но и не отнимает. Поэтому выигрывает тот, кто пишет конкретно и сразу говорит, чем его проверять.

Под печатью

Обычное пророчество видно всем сразу — и в этом его слабость: заранее названный ответ влияет на исход, а иногда просто портит интригу. Поэтому есть второй способ записи. Видимую часть вы пишете открыто, а содержимое уходит в блокчейн зашифрованным до назначенной минуты.

Под печатью можно записать две разные вещи, и путать их не стоит:

Ключа к такому ответу в момент записи не существует ни у кого. Не «мы его не смотрим» и не «мы обещаем не открывать» — его физически нет. Шифрование устроено так, что ключом служит подпись, которую сеть drand выпустит в назначенный момент и опубликует открыто. drand — это не блокчейн и не монета: несколько независимых организаций (среди них Cloudflare, EPFL, Университет Чили) каждые три секунды сообща подписывают номер очередного тика. Подпись собирается только вместе, в одиночку её не сделает никто.

Из этого следуют две вещи, ради которых всё и затевалось:

Шифротекст лежит внутри самой инскрипции целиком, поэтому наш сайт для раскрытия не нужен. Возьмите свидетельство из блокчейна, подпись нужного раунда у любого узла drand — и открывайте чем угодно: годятся официальная программа tle, age с плагином tlock или наш tools/unseal.py. Мы это проверяем в обратную сторону: файл, зашифрованный чужой программой, наш код открывает байт в байт.

Чего мы при этом не обещаем. Автор знает свой ответ и может показать его кому захочет заранее — печать защищает от посторонних, а не от самого автора. Раскрытие держится на том, что сеть drand доживёт до назначенного раунда: если она остановится, капсула останется закрытой навсегда. Поэтому сроки лучше держать в пределах года, а не десятилетий. И помните, что после раскрытия ответ становится публичным — это не личная переписка.

Где у печати слабые места

Криптография защищает содержимое капсулы после того, как оно зашифровано. Всё, что происходит до этого момента, она не покрывает — и об этом честнее сказать прямо, чем прятать за словом «шифрование».

ГдеЧто может противникЧто мы делаем
Ваш компьютер Читает текст прямо при наборе, если на машине зловред или лишнее расширение браузера Ничего. Это вне нашей досягаемости — и мы этого не обещаем
Дорога до сайта Раньше читал бы ответ целиком: сайт работал по открытому HTTP Исправлено: весь сайт под HTTPS, обычные запросы перенаправляются. Сертификат выпущен на сам адрес — домен для этого больше не нужен
Наш сервер Видит ответ в момент шифрования, если шифруем мы Открытый текст не пишется ни в базу, ни в журнал — но проверить это на слово нельзя. Поэтому есть второй путь: запечатать у себя
Сеть drand При сговоре большинства узлов — вскрыть капсулу раньше срока Ключ сети закреплён в нашем коде, чужой подсунуть нельзя. Но сам сговор мы предотвратить не можем: это внешнее допущение
Блокчейн Видит размер капсулы, время записи, адреса и связи платежей Скрыт текст, но не факт записи. Это не анонимность

Если не хотите доверять нам вовсе

Запечатайте ответ у себя, а нам отдайте готовую капсулу — тогда открытый текст не покинет вашу машину ни на секунду:

python tools/seal.py --until 2027-03-01 --text "ваш ответ"

В форме есть поле «принести свою капсулу». Срок мы возьмём из неё самой, а не из формы, — подменить его не сможем. Подойдёт и капсула, сделанная чужой программой: tle или age с плагином tlock.

Что мы не утверждаем: что наша реализация криптографии безошибочна. Она сверена с официальными векторами RFC 9380, с эталоном библиотеки, на которой работает drand, и открывает файлы, зашифрованные чужой программой, байт в байт — но независимого аудита не проходила. Если ставка высока, шифруйте своими руками и проверенным инструментом.

Очки

За сбывшееся — 10 очков плюс по одному за каждый месяц горизонта (не больше 24). За провал — минус 4. Смысл простой: угадать на три года вперёд труднее, чем на неделю, и это должно быть видно в рейтинге.

API

Всё, что видно на сайте, доступно и машинам:

Почему чеканка начинается не мгновенно

Мы ждём, пока ваш платёж попадёт в блок, и только потом тратим его. Причина техническая: пока транзакция висит в очереди, отправитель может заменить её другой, с большей комиссией, и увести монеты обратно. Наши commit и reveal — её прямые потомки, поэтому они исчезли бы вместе с ней, а на сайте осталась бы запись «отчеканено» со ссылками в пустоту. Одна лишняя пауза в обмен на то, что каждой строчке здесь можно верить.

Честно о рисках

Записать пророчество