Каждый результат определяется тремя компонентами, которые не контролирует ни одна сторона по отдельности, а каждое открытие записывается в блокчейн X Layer.
Мы генерируем секретный сид и публикуем его хеш SHA-256 (на нашем сайте и в X Layer) до того, как он будет использован хотя бы в одном паке. Когда период сида заканчивается, мы раскрываем его, а смарт-контракт проверяет, что он совпадает с хешем.
Сид, которым вы управляете на странице «Честность», плюс счётчик (nonce), который растёт с каждым открытием. Меняйте его в любой момент.
Когда вы открываете пак, мы фиксируем раунд drand quicknet, который наступит через несколько секунд. drand — публичная сеть случайности, которую поддерживают независимые организации (League of Entropy). Её число ещё не существует в момент открытия — поэтому никто не может знать итог заранее.
h = HMAC-SHA256(серверный сид, клиентский сид : nonce : случайность drand) roll = h mod (общее число единиц в фонде) prize = ячейка запаса, в которую попадает roll
Когда вы открываете пак, точная таблица призов — каждый приз и сколько их осталось — фиксируется и хешируется вместе с сидами и раундом drand. После этого никто не может изменить эти шансы; правки действуют только для паков, открытых позже. Страница проверки показывает шансы на тот момент и проверяет их.
Фиксации сидов, раскрытия сидов и каждое открытие — в том числе те, которые не удалось рассчитать, — записываются в наш контракт StarPackLedger в X Layer вместе с хешем пользователя, nonce, раундом drand, случайностью, призом и хешем результата.
Откройте страницу проверки любого открытия — она пересчитывает всё прямо в вашем браузере. Или проверьте самостоятельно любым инструментом SHA-256 / HMAC.