Почему истинная случайность важна в Web3

Новичок1/26/2024, 1:38:38 PM
Эта статья знакомит с тем, что такое случайность, понимает ее типы и исследует вызовы, которые она представляет в экосистеме блокчейна и Web3.

Эта статья знакомит с тем, что такое случайность, понимает ее типы и исследует вызовы, которые она представляет в экосистеме блокчейна и Web3.

Термин "случайность" относится к отсутствию закономерности или предсказуемости. Результат подбрасывания монеты, узор отпечатка пальца и форма снежинки считаются непредсказуемыми. Хотя непредсказуемые результаты обычны в природе, нельзя сказать то же самое о случайности, генерируемой компьютерами. Поскольку компьютеры являются детерминированными устройствами, может быть невозможно генерировать действительно случайные числа исключительно с помощью набора компьютерных алгоритмов.

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

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

В этой статье мы разберем, что такое случайность, узнаем о типах случайности и исследуем вызовы, которые представляет случайность, когда речь идет облокчейныи экосистема Web3.

Действительно ли случайность случайна?

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

  • Непредсказуемый — результат должен быть неизвестен заранее.
  • Непредвзятый — каждый результат должен быть равновероятен.
  • Provable—Результат должен быть независимо подтверждаемым.
  • Невозможно подделать—процесс генерации случайности должен быть устойчив к манипуляциям любой сущности.
  • Невоспроизводимый - процесс генерации случайности не может быть воспроизведен, если не сохранена исходная последовательность.

Компьютер - это предсказуемое устройство с заранее заданными цепями, компонентами и определенным набором кода и алгоритмов, что делает возможным предсказание случайного числового вывода или последовательности, генерируемой компьютером, при фиксированных условиях. Точно так же, как функционирующий калькулятор всегда должен выдавать результат 2+2 равный 4, компьютер всегда должен выдавать заданный вывод при одинаковом вводе. Таким образом, компьютеры могут быть неспособны создавать зависимые условия и истинно случайные числа.

Для обхода этого ограничения генераторы случайных чисел (RNG) используют зерно - начальное значение (ввод) расчета, которое используется для генерации вывода. Зерно может быть сгенерировано на основе чего-то сложного для воспроизведения - данные, полученные из фотографии, время суток, движение мыши пользователя или лампы лава.

Однако, даже если процесс генерации случайных чисел трудно воспроизвести, это не означает, что его технически невозможно воспроизвести. Если комбинировать несколько сложных методов генерации начальных значений, результаты можно считать относительно надежными, даже если разумно предположить, что эти начальные значения со временем могут быть раскрыты. Но если при генерации различных начальных значений используется один и тот же математический метод, результаты не будут действительно случайными. Тогда вопрос возникает: какой вид случайности можно считать действительно случайным?

Псевдослучайные генераторы случайных чисел против истинных генераторов случайных чисел

Обычно генераторы случайных чисел можно разделить на две категории: псевдослучайные генераторы случайных чисел (PRNG) и истинные генераторы случайных чисел (TRNG). PRNG используют математические алгоритмы в качестве средства генерации случайных значений, в то время как TRNG используют физические средства, такие как атмосферный шум.

ГСПС - это набор алгоритмов, которые используют математические формулы для генерации случайной последовательности, имитирующей истинно случайные числа. Поскольку компьютеры являются различными системами, числа могут казаться случайными для человеческих наблюдателей, но они могут содержать различимые шаблоны, которые могут быть раскрыты через обширный статистический анализ.

TRNGs используют непредсказуемые физические источники, такие как космический шум, радиоактивное распадение изотопов или статика в воздушных волнах, для генерации случайных чисел на основе естественных явлений. Поскольку TRNGs «извлекают» случайность из физических явлений, считается, что они производят более сильную (более непредсказуемую) случайность, чем это делают компьютеры. Тем не менее, информация, используемая TRNGs, также может быть детерминированной. Если кто-то вставит себя между TRNG и явлением, которое он сканирует, они могут перехватить тот же сигнал и точно знать последовательность чисел.

Хотя TRNG могут создавать случайные последовательности с меньшей вероятностью быть выявленными как различимые узоры, они более затратны по сравнению с PRNG, что делает их непрактичными для общих случаев использования. PRNG также имеют еще одно ключевое преимущество по сравнению с TRNG — воспроизводимость. Наблюдатель может воспроизвести ту же последовательность чисел, если знает начальную точку последовательности, что делает верификацию процесса генерации случайных чисел возможной — полезный аспект для многихWeb3приложения, включающие случайность.

Почему случайность важна для блокчейнов

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

Распределенное согласие в основе ограничивается количеством сообщений, которые могут быть отправлены за определенный период времени (пропускная способность) и временем, необходимым для отправки сообщения по сети (задержка). В общедоступной блокчейн с тысячами распределенных участников, которым необходимо прийти к соглашению, каждый узел, нуждающийся в отправке сообщений всем остальным узлам, был бы непрактичным. Чтобы ограничить количество сообщений, которые необходимо отправить для достижения согласия, биткоин использует доказательство работы (PoW) в качестве источника случайности, определяющего, какой блок добавляется в блокчейн. Поскольку вычислительная головоломка, с которой конкурируют майнеры, чтобы успешно добавить блок в блокчейн, сложно решить, вероятность того, что несколько узлов решат головоломку одновременно, низкая, что ограничивает количество сообщений, необходимых для достижения согласия в сети.

Случайность также часто используется в системах Proof-of-Stake (PoS) для обеспечения справедливого и непредсказуемого распределения обязанностей валидатора. Если злоумышленник может повлиять на источник случайности, используемый в процессе выбора, он может увеличить свои шансы на выбор и подвергнуть опасности безопасность сети.

Из-за прозрачности блокчейнов все входы и выходы доступны участникам системы, что потенциально делает случайно сгенерированные последовательности предсказуемыми. Например, некоторые методы генерации случайных чисел on-chain, такие как хеширование блока, содержат уязвимости в безопасности, которые легко могут быть использованы. Если майнер/валидатор заинтересован в конкретном результате, определяемом случайным значением или последовательностью, производитель блока может повлиять на генерацию случайных последовательностей, не публикуя блоки, которые могут дать ему преимущество, фактически перебрасывая кости до появления выгодного для него результата.

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

Случайность в Web3

Когда люди думают об играх на блокчейне, NFTпроекты или цифровое искусство, они могут не учитывать важность случайности в определении результатов. Будь то определение местоположения игровых активов в метавселенная, добавление вариации в алгоритм генеративного искусства, создание содержимого лутбокса, чеканка NFT, распределение призов победителям, аутентификация билетов на мероприятие или периодическое определение того, какой участник DAO будет выбран для определенной управляющей роли, веб-приложения Web3 требуют безопасного источника случайности для создания справедливых и непредсказуемых результатов.

https://youtu.be/DvBVlOLpPNg

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

Доступ к источнику случайности, который защищен от вмешательства, непредсказуем и может быть проверен всеми участниками, - это непростая задача. Тем не менее желание справедливости и прозрачности в индустрии Web3 открыло множество приложений и протоколов, которые выделяются по сравнению с их аналогами из Web2. Возможность получения доступа к справедливому и беспристрастному источнику случайности в проверяемо безопасном режиме открывает множество новых случаев использования в блокчейн-играх, NFT,децентрализованное управление, Web3 социальные медиа, сбор средств и благотворительность, социальные токены и за их пределами.

Chainlink VRF

Chainlink Проверяемая случайная функция (VRF)это стандартное решение RNG в отрасли, позволяющее смарт-контрактам и системам вне цепи получать доступ к источнику проверяемой случайности с использованием вычислений вне цепи и криптографии. VRF объединяет блочные данные, которые еще неизвестны на момент запроса, с предварительно согласованным частным ключом оракульного узла для генерации как случайного числа, так и криптографического доказательства. Приложение-потребитель примет входное случайное число только в случае наличия допустимого криптографического доказательства, и криптографическое доказательство может быть сгенерировано только в случае невозможности вмешательства в процесс VRF.

Chainlink VRF использует вычисления вне цепи и криптографию для создания неизменяемого источника случайности.

С момента запуска Chainlink VRF было выполнено более 6,5 миллиона запросов на справедливые и непредвзятые случайные числа и в настоящее время обеспечивается проверяемая случайность более чем 3 400 уникальным умные контрактычерез несколько блокчейн-сетей, включая Avalanche, BNB Chain, Ethereum и Polygon.

Chainlink VRF предоставляет ряд критически важных функций, которые делают его отраслевым стандартом, таких как:

  • Непредсказуемо — Никто не может предсказать случайность, генерируемую Chainlink VRF, поскольку данные блока неизвестны на момент запроса случайности.
  • Честный/без предвзятости—Сгенерированное случайное число основано на равномерном распределении, что означает, что все числа в диапазоне имеют равные шансы на выбор.
  • Проверяемый — пользователи могут проверить целостность приложения, полагаясь на случайный вход от Chainlink VRF через ончейную верификацию криптографического доказательства.
  • Не поддается взлому - ни один - ни оракул, внешние сущности или команда разработчиков - не могут повлиять на процесс генерации случайного числа. Если процесс VRF подвергается вмешательству, узел не может произвести действительное криптографическое доказательство, и смарт-контракт не примет ввод случайного числа.
  • Прозрачность благодаря открытому исходному коду пользователи могут проверить процесс получения случайности.

С помощью этих беспрецедентных функций, множество встроенных методов безопасности и постоянные улучшенияна основе обратной связи пользователей, приложения, работающие на основе Chainlink VRF, могут создавать доказуемо честные, непредсказуемые результаты с помощью неизменяемого ГПСЧ и разблокировать значимые и захватывающие функции и впечатления.

Если вы разработчик и хотите быстро подключить свое приложение к Chainlink VRF, посетите документация разработчикаи присоединяйтесь к техническим обсуждениям в Discord. Если вы хотите назначить звонок, чтобы обсудить интеграцию более подробно, обратитесь здесь.

Отказ от ответственности:

  1. Эта статья перепечатана с []. Все авторские права принадлежат оригинальному автору [**]. Если есть возражения против этого перепечатывания, пожалуйста, свяжитесь с Gate Learnкоманда, и они незамедлительно справятся с этим.
  2. Ответственность за отказ от ответственности: Взгляды и мнения, высказанные в этой статье, являются исключительно точкой зрения автора и не являются инвестиционными советами.
  3. Переводы статьи на другие языки выполняются командой Gate Learn. Если не указано иное, копирование, распространение или плагиат переведенных статей запрещены.

Почему истинная случайность важна в Web3

Новичок1/26/2024, 1:38:38 PM
Эта статья знакомит с тем, что такое случайность, понимает ее типы и исследует вызовы, которые она представляет в экосистеме блокчейна и Web3.

Эта статья знакомит с тем, что такое случайность, понимает ее типы и исследует вызовы, которые она представляет в экосистеме блокчейна и Web3.

Термин "случайность" относится к отсутствию закономерности или предсказуемости. Результат подбрасывания монеты, узор отпечатка пальца и форма снежинки считаются непредсказуемыми. Хотя непредсказуемые результаты обычны в природе, нельзя сказать то же самое о случайности, генерируемой компьютерами. Поскольку компьютеры являются детерминированными устройствами, может быть невозможно генерировать действительно случайные числа исключительно с помощью набора компьютерных алгоритмов.

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

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

В этой статье мы разберем, что такое случайность, узнаем о типах случайности и исследуем вызовы, которые представляет случайность, когда речь идет облокчейныи экосистема Web3.

Действительно ли случайность случайна?

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

  • Непредсказуемый — результат должен быть неизвестен заранее.
  • Непредвзятый — каждый результат должен быть равновероятен.
  • Provable—Результат должен быть независимо подтверждаемым.
  • Невозможно подделать—процесс генерации случайности должен быть устойчив к манипуляциям любой сущности.
  • Невоспроизводимый - процесс генерации случайности не может быть воспроизведен, если не сохранена исходная последовательность.

Компьютер - это предсказуемое устройство с заранее заданными цепями, компонентами и определенным набором кода и алгоритмов, что делает возможным предсказание случайного числового вывода или последовательности, генерируемой компьютером, при фиксированных условиях. Точно так же, как функционирующий калькулятор всегда должен выдавать результат 2+2 равный 4, компьютер всегда должен выдавать заданный вывод при одинаковом вводе. Таким образом, компьютеры могут быть неспособны создавать зависимые условия и истинно случайные числа.

Для обхода этого ограничения генераторы случайных чисел (RNG) используют зерно - начальное значение (ввод) расчета, которое используется для генерации вывода. Зерно может быть сгенерировано на основе чего-то сложного для воспроизведения - данные, полученные из фотографии, время суток, движение мыши пользователя или лампы лава.

Однако, даже если процесс генерации случайных чисел трудно воспроизвести, это не означает, что его технически невозможно воспроизвести. Если комбинировать несколько сложных методов генерации начальных значений, результаты можно считать относительно надежными, даже если разумно предположить, что эти начальные значения со временем могут быть раскрыты. Но если при генерации различных начальных значений используется один и тот же математический метод, результаты не будут действительно случайными. Тогда вопрос возникает: какой вид случайности можно считать действительно случайным?

Псевдослучайные генераторы случайных чисел против истинных генераторов случайных чисел

Обычно генераторы случайных чисел можно разделить на две категории: псевдослучайные генераторы случайных чисел (PRNG) и истинные генераторы случайных чисел (TRNG). PRNG используют математические алгоритмы в качестве средства генерации случайных значений, в то время как TRNG используют физические средства, такие как атмосферный шум.

ГСПС - это набор алгоритмов, которые используют математические формулы для генерации случайной последовательности, имитирующей истинно случайные числа. Поскольку компьютеры являются различными системами, числа могут казаться случайными для человеческих наблюдателей, но они могут содержать различимые шаблоны, которые могут быть раскрыты через обширный статистический анализ.

TRNGs используют непредсказуемые физические источники, такие как космический шум, радиоактивное распадение изотопов или статика в воздушных волнах, для генерации случайных чисел на основе естественных явлений. Поскольку TRNGs «извлекают» случайность из физических явлений, считается, что они производят более сильную (более непредсказуемую) случайность, чем это делают компьютеры. Тем не менее, информация, используемая TRNGs, также может быть детерминированной. Если кто-то вставит себя между TRNG и явлением, которое он сканирует, они могут перехватить тот же сигнал и точно знать последовательность чисел.

Хотя TRNG могут создавать случайные последовательности с меньшей вероятностью быть выявленными как различимые узоры, они более затратны по сравнению с PRNG, что делает их непрактичными для общих случаев использования. PRNG также имеют еще одно ключевое преимущество по сравнению с TRNG — воспроизводимость. Наблюдатель может воспроизвести ту же последовательность чисел, если знает начальную точку последовательности, что делает верификацию процесса генерации случайных чисел возможной — полезный аспект для многихWeb3приложения, включающие случайность.

Почему случайность важна для блокчейнов

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

Распределенное согласие в основе ограничивается количеством сообщений, которые могут быть отправлены за определенный период времени (пропускная способность) и временем, необходимым для отправки сообщения по сети (задержка). В общедоступной блокчейн с тысячами распределенных участников, которым необходимо прийти к соглашению, каждый узел, нуждающийся в отправке сообщений всем остальным узлам, был бы непрактичным. Чтобы ограничить количество сообщений, которые необходимо отправить для достижения согласия, биткоин использует доказательство работы (PoW) в качестве источника случайности, определяющего, какой блок добавляется в блокчейн. Поскольку вычислительная головоломка, с которой конкурируют майнеры, чтобы успешно добавить блок в блокчейн, сложно решить, вероятность того, что несколько узлов решат головоломку одновременно, низкая, что ограничивает количество сообщений, необходимых для достижения согласия в сети.

Случайность также часто используется в системах Proof-of-Stake (PoS) для обеспечения справедливого и непредсказуемого распределения обязанностей валидатора. Если злоумышленник может повлиять на источник случайности, используемый в процессе выбора, он может увеличить свои шансы на выбор и подвергнуть опасности безопасность сети.

Из-за прозрачности блокчейнов все входы и выходы доступны участникам системы, что потенциально делает случайно сгенерированные последовательности предсказуемыми. Например, некоторые методы генерации случайных чисел on-chain, такие как хеширование блока, содержат уязвимости в безопасности, которые легко могут быть использованы. Если майнер/валидатор заинтересован в конкретном результате, определяемом случайным значением или последовательностью, производитель блока может повлиять на генерацию случайных последовательностей, не публикуя блоки, которые могут дать ему преимущество, фактически перебрасывая кости до появления выгодного для него результата.

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

Случайность в Web3

Когда люди думают об играх на блокчейне, NFTпроекты или цифровое искусство, они могут не учитывать важность случайности в определении результатов. Будь то определение местоположения игровых активов в метавселенная, добавление вариации в алгоритм генеративного искусства, создание содержимого лутбокса, чеканка NFT, распределение призов победителям, аутентификация билетов на мероприятие или периодическое определение того, какой участник DAO будет выбран для определенной управляющей роли, веб-приложения Web3 требуют безопасного источника случайности для создания справедливых и непредсказуемых результатов.

https://youtu.be/DvBVlOLpPNg

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

Доступ к источнику случайности, который защищен от вмешательства, непредсказуем и может быть проверен всеми участниками, - это непростая задача. Тем не менее желание справедливости и прозрачности в индустрии Web3 открыло множество приложений и протоколов, которые выделяются по сравнению с их аналогами из Web2. Возможность получения доступа к справедливому и беспристрастному источнику случайности в проверяемо безопасном режиме открывает множество новых случаев использования в блокчейн-играх, NFT,децентрализованное управление, Web3 социальные медиа, сбор средств и благотворительность, социальные токены и за их пределами.

Chainlink VRF

Chainlink Проверяемая случайная функция (VRF)это стандартное решение RNG в отрасли, позволяющее смарт-контрактам и системам вне цепи получать доступ к источнику проверяемой случайности с использованием вычислений вне цепи и криптографии. VRF объединяет блочные данные, которые еще неизвестны на момент запроса, с предварительно согласованным частным ключом оракульного узла для генерации как случайного числа, так и криптографического доказательства. Приложение-потребитель примет входное случайное число только в случае наличия допустимого криптографического доказательства, и криптографическое доказательство может быть сгенерировано только в случае невозможности вмешательства в процесс VRF.

Chainlink VRF использует вычисления вне цепи и криптографию для создания неизменяемого источника случайности.

С момента запуска Chainlink VRF было выполнено более 6,5 миллиона запросов на справедливые и непредвзятые случайные числа и в настоящее время обеспечивается проверяемая случайность более чем 3 400 уникальным умные контрактычерез несколько блокчейн-сетей, включая Avalanche, BNB Chain, Ethereum и Polygon.

Chainlink VRF предоставляет ряд критически важных функций, которые делают его отраслевым стандартом, таких как:

  • Непредсказуемо — Никто не может предсказать случайность, генерируемую Chainlink VRF, поскольку данные блока неизвестны на момент запроса случайности.
  • Честный/без предвзятости—Сгенерированное случайное число основано на равномерном распределении, что означает, что все числа в диапазоне имеют равные шансы на выбор.
  • Проверяемый — пользователи могут проверить целостность приложения, полагаясь на случайный вход от Chainlink VRF через ончейную верификацию криптографического доказательства.
  • Не поддается взлому - ни один - ни оракул, внешние сущности или команда разработчиков - не могут повлиять на процесс генерации случайного числа. Если процесс VRF подвергается вмешательству, узел не может произвести действительное криптографическое доказательство, и смарт-контракт не примет ввод случайного числа.
  • Прозрачность благодаря открытому исходному коду пользователи могут проверить процесс получения случайности.

С помощью этих беспрецедентных функций, множество встроенных методов безопасности и постоянные улучшенияна основе обратной связи пользователей, приложения, работающие на основе Chainlink VRF, могут создавать доказуемо честные, непредсказуемые результаты с помощью неизменяемого ГПСЧ и разблокировать значимые и захватывающие функции и впечатления.

Если вы разработчик и хотите быстро подключить свое приложение к Chainlink VRF, посетите документация разработчикаи присоединяйтесь к техническим обсуждениям в Discord. Если вы хотите назначить звонок, чтобы обсудить интеграцию более подробно, обратитесь здесь.

Отказ от ответственности:

  1. Эта статья перепечатана с []. Все авторские права принадлежат оригинальному автору [**]. Если есть возражения против этого перепечатывания, пожалуйста, свяжитесь с Gate Learnкоманда, и они незамедлительно справятся с этим.
  2. Ответственность за отказ от ответственности: Взгляды и мнения, высказанные в этой статье, являются исключительно точкой зрения автора и не являются инвестиционными советами.
  3. Переводы статьи на другие языки выполняются командой Gate Learn. Если не указано иное, копирование, распространение или плагиат переведенных статей запрещены.
Lancez-vous
Inscrivez-vous et obtenez un bon de
100$
!