Anyza Club
СоздатьВойти

← Система розыгрышей на основе хеша Bitcoin

Как работает розыгрыш на основе хеша Bitcoin

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

Провести бесплатный розыгрыш
Талисман Anyza с глобусом розыгрыша и монетой биткоина

Шаг 1

Список замораживается

Шаг 2

Мы выбираем блок Bitcoin, которого ещё не существует

Шаг 3

Расчёт определяет победителей

1. Список замораживается

Когда организатор нажимает «Провести розыгрыш», имена сохраняются точно в том порядке, в каком их вставили, по одному в строке: № 1, № 2, № 3…

В тот же момент мы вычисляем цифровой отпечаток списка (SHA-256). Изменение одной буквы в имени меняет весь отпечаток — поэтому он показан на странице: любое последующее изменение будет очевидно.

Отпечаток также записывается в Bitcoin через OpenTimestamps. Файл .ots — доказательство того, что именно этот список уже существовал в тот момент.

2. Мы выбираем блок Bitcoin, которого ещё не существует

При заморозке мы смотрим, какой блок в сети последний (вершина), и фиксируем блок «вершина + 2» как тот, что определит результат.

Хеш блока непредсказуем: тысячи майнеров по всему миру соревнуются за его создание, тратя настоящую энергию. Никто — ни организатор, ни Anyza — не знает хеш до выхода блока.

Мы ждём выхода выбранного блока и ещё одного поверх него — для подтверждения. В среднем это занимает 20–30 минут.

3. Расчёт определяет победителей

Имея хеш блока, каждый победитель определяется простым расчётом, одинаковым для всех:

  1. Составьте текст: хеш блока + «:» + код розыгрыша + «:» + k (k = 1 для 1-го победителя, 2 для 2-го…).
  2. Вычислите SHA-256 этого текста и возьмите первые 15 символов — это число в шестнадцатеричной записи.
  3. Разделите это число на количество имён, оставшихся в списке; остаток от деления — это позиция (остаток 0 = первый).
  4. Имя на этой позиции побеждает и выбывает из списка — так никто не выигрывает дважды. Повторите для следующего k.
позиция = int( sha256(“хеш_блока:id_розыгрыша:k”)[0:15], 16 ) mod N

Пример с настоящими числами

Настоящий блок Bitcoin, пример кода розыгрыша и список из 40 имён:

Хеш блока

00000000000000000000ba717add9e9ca88219ed055ab6a33fcb5a4a229036ef

Код розыгрыша

5c033623-67a6-4a4c-bd5b-1d0721e0b6e6

1-й победитель (k = 1, 40 имён)

sha256("…a229036ef:5c03…b6e6:1")

→ 3c13c940ddd9060 → 270564059204391008

→ 270564059204391008 mod 40 = 8

Остаток 8 → позиция 8 при счёте от нуля = побеждает № 9 в списке.

2-й победитель (k = 2, осталось 39 имён)

sha256("…a229036ef:5c03…b6e6:2")

→ 0e74889ef2fd4a9 → 65100476880770217

→ 65100476880770217 mod 39 = 3

Остаток 3 в списке из оставшихся 39 → побеждает тот, кто на этой позиции.

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

Хронология, которая доказывает порядок

Страница каждого розыгрыша показывает четыре момента с датой и временем:

  1. Список заморожен, хеш сохранён

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

  2. Список записан в Bitcoin

    OpenTimestamps записывает отпечаток в блок: независимое доказательство того, что список уже существовал.

  3. Добывается решающий блок

    Через несколько минут выходит выбранный блок, с временем, записанным в самом блоке.

  4. Результат рассчитан

    По хешу блока расчёт указывает победителей — всегда одних и тех же для всех, кто повторит.

Если бы список изменили после блока, отпечаток не совпал бы с записанным в Bitcoin. Если бы блок существовал до списка, это выдала бы высота: он выбран как «вершина + 2» при заморозке.

Как любой может проверить

  • Пересчитать

    На странице розыгрыша кнопка «Пересчитать здесь» считает всё в вашем браузере: отпечаток списка и каждого победителя.

  • Проверить блок

    Хеш и время блока открыты в любом обозревателе Bitcoin, например mempool.space.

  • Загрузить файл .ots

    Кнопка «Загрузить файл .ots» (или opentimestamps.org) проверяет, в какой блок записан список.

Автоматические розыгрыши в сообществах Anyza Club

В сообществах расчёт тот же — список составляют участники, выполнившие правила (участники сообщества, подписчики, те, кто был на событии, прошёл урок или написал пост), замороженные при закрытии. Два режима:

  • Быстрый режим: блок «вершина + 2» на момент закрытия, как в публичном розыгрыше.
  • Максимальное доказательство: первый блок после подтверждения записи списка в Bitcoin — список доказуемо существовал до решающего блока.
Создать моё сообщество бесплатно

Частые вопросы

Можно ли предсказать хеш следующего блока?

Нет. Хеш зависит от транзакций и от числа, которое майнеры подбирают методом проб и ошибок миллиарды раз в секунду. Будь он предсказуем, майнинг Bitcoin не работал бы.

Могут ли Anyza или организатор сжульничать?

Только оставив след. Список и отпечаток фиксируются до блока, блок выбирается в тот же момент, а расчёт открыт. Любое изменение привело бы к несовпадению отпечатка или результата при проверке.

А если кто-то проведёт несколько розыгрышей, пока не выпадет нужный результат?

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

А если сеть Bitcoin реорганизует блок?

Мы ждём одно подтверждение (блок сверху) перед розыгрышем. Реорганизации на два блока очень редки; а использованный хеш записан на странице, так что расчёт всегда можно повторить.

Даёт ли остаток от деления преимущество кому-то?

На практике нет. 15 символов образуют число до 60 бит; при количестве имён до 5 000 разница в шансах между позициями меньше одной на триллион.

Влияет ли порядок имён?

Порядок фиксируется при заморозке и входит в отпечаток. Поскольку хеш блока непредсказуем, ни у одной позиции нет преимущества.

Готовы провести свой?

Бесплатно, без регистрации, со ссылкой для публикации и результатом по e-mail.

Провести бесплатный розыгрыш

Популярные сообщества в Anyza Club

Смотреть все

Ближайшие события в Anyza Events

Смотреть все

Новинки в Anyza Market — платите криптой

Смотреть все

Больше бесплатных инструментов Anyza

Anyza Classificados

Объявления для тех, кто платит криптой

Машины, часы, велосипеды, квартиры, услуги — проверенные продавцы и цены в стейблкоинах, сделка напрямую между вами.

Открыть объявления
Anyza Radar

Где уже принимают биткоин

Карта магазинов, кафе и сервисов, принимающих биткоин, на 11 языках — по данным BTC Map и OpenStreetMap.

Открыть Radar
Anyza Events

Билеты с QR-кодом и проверкой на входе

Митапы, конференции и онлайн-события. Покупатель платит организатору; вход работает офлайн на любом телефоне.

Открыть Events