Щоб ігри були справедливими, потрібна децентралізована випадковість

Квантова механіка говорить нам, що те, що виглядає як передбачуваний і впорядкований Всесвіт, побудовано на світі непередбачуваності та простої ймовірності. Хоча квантовий світ виглядає дивним, його можна зрозуміти і навіть використовувати для таких технологій, як напівпровідники, світлодіоди та квантова криптографія. Щось подібне можна сказати про випадковість у метавсесвіті. Те, що виглядає як система, побудована на випадкових значеннях, створених генераторами випадкових чисел (ГВЧ), насправді базується на програмах, за якими стоїть метод, який можна зрозуміти — добре чи погано.

Ключова роль випадкових чисел

Випадкові числа мають велике значення в ряді додатків, включаючи ігри, системи безпеки, управління децентралізованою автономною організацією (DAO) і генерацію незамінних токенів (NFT). Якщо у вашій грі немає доступу до випадково згенерованих чисел, ваші старти стануть повторюваними та застарілими. Якщо ваша система безпеки покладається на коди автентифікації, які легко вгадати, вона не забезпечує достатньої безпеки. Якщо будь-яка система, яка потребує різноманітності, її не отримує, вона не буде дуже ефективною.

Навіть якщо ці системи не виглядають випадковими, для виконання важливих операцій вони покладаються на випадково згенеровані значення. Без доступу до випадковості добре сплановані системи не можуть працювати. Однак випадкові числа, на які покладаються ці системи, не завжди такі випадкові, як може здатися.

Багато RNG насправді є псевдо RNG (PRNG). Замість того, щоб створювати випадкові результати, вони надають результати фіксованого рівняння. Вихідне значення є результатом запуску початкового значення, яке часто називають «початковим», через це рівняння. Потім результат використовується як нове початкове число, і процес починається знову. Хоча результат не є випадковим, сторонньому спостерігачеві він може здатися випадковим.

Для багатьох застосувань це ефективно. Справжня випадковість не потрібна в кожній програмі. Наприклад, у відеогрі з випадковими зустрічами може бути лише обмежена кількість дій, які гра може виконати в будь-який момент часу. PRNG, який надає значення за межами заданої області, не принесе великої користі. Коли ставки низькі, технічні вимоги часто збігаються. Однак якість PRNG може сильно відрізнятися. Це може бути проблемою для програм із вищими ставками, для багатьох людей, які залежать від них, або для різноманітних випадків використання.

Деякі PRNG покладаються на прості рівняння, які можуть повторюватися через короткий проміжок часу. Це повторення породжує передбачуваність. На інших можуть впливати зовнішні фактори. Це призводить до фальсифікації. Крім того, багато PRNG не забезпечують спосіб визначити, чи є надане число запланованим значенням. Відсутність перевірки відкриває ще одну можливість для фальсифікацій і може призвести до звинувачень користувачів у тому, що програми, які покладаються на ці цифри, маніпулюють упередженими результатами.

Хоча можливість перевірити, що явно випадкове число було саме тим, що задумано RNG, може здатися дурним, це не смішно. Принцип багатьох систем блокчейну базується на прозорості та надійності. Неможливість підтвердити, що певне число справді було створено випадковим чином, вражає саме серце цих ідеалів. Коли цифри працюють, наприклад, забезпечують виграші в іграх або посилюють безпеку, відсутність можливості довести, що цифри не були підроблені, може серйозно вплинути на довіру спільноти.

Крім того, не кожен PRNG підходить для всіх можливих застосувань. Деякі з них призначені для певних функцій Web3. Вони не є універсальними.

Справжні генератори випадкових чисел (TRNG) порівняно з псевдо RNG (PRNG). Джерело: Level Up Coding

Прагнення до справжньої випадковості

Однак ці системи також мають недоліки. Вони часто дуже централізовані, що знову може призвести до втручання будь-кого, хто має доступ до машини. Справжня випадковість часто має набагато вищу ціну, ніж послуги якісного PRNG. Нарешті, централізація, на яку покладаються ці пристрої, означає, що якщо щось піде не так, уся система перестане працювати.

Децентралізація та імператив надійності

Використання RNG, який не відповідає вимогам децентралізації, перевірки чи безпеки вашої програми, може бути катастрофічним. Як продемонстрував крах Axie Infinity через порушення безпеки, технічний збій може мати серйозні наслідки навіть для найкращих програм із найсильнішою базою користувачів. З огляду на те, наскільки важливі RNG для програм, які їх використовують, слід використовувати найкращий для поставленого завдання.

Ідеальний RNG буде непередбачуваним, захищеним від втручання, перевіреним, децентралізованим і постійно доступним. Якщо ви вибираєте RNG, запитайте:

  • Чи забезпечує це достатню випадковість?
  • Чи можна перевірити результати?
  • Чи він захищений від несанкціонованого доступу?
  • Це децентралізовано, щоб уникнути збоїв в одній точці?

Оскільки розробники блокчейнів продовжують розширювати своє бачення, розширювати межі своїх додатків і надавати все більше можливостей для залучення громадськості до цієї технології, вкрай важливо, щоб для їхніх додатків була доступна найкраща підтримка.

Фелікс Сю Криптограф, ранній користувач і колекціонер NFT. Фелікс закінчив NYU Stern і заснував два криптопроекти, ARPA та Bella Protocol, які входять до топ-500 за ринковою капіталізацією. Раніше Фелікс працював у Fosun Investment, сімейному офісі Sackler і Vertical Research у Нью-Йорку та Пекіні. Фелікс любить вітрильний спорт і кайтсерфінг, його колекція NFT була представлена ​​в Wall Street Journal і The New York Times.

Ця стаття призначена для загальної інформації та не призначена і не повинна розглядатися як юридична чи інвестиційна порада. Погляди, думки та погляди, висловлені тут, належать лише автору та не обов’язково відображають погляди та думки Cointelegraph.

Джерело: https://cointelegraph.com/news/games-need-decentralized-randomness