Секретная функция: секретные оракулы
Секретные оракулы в секретной сети расширяют возможности децентрализованных, ненадежных источников частной случайности, которые могут использоваться другими контрактами для таких сценариев использования, как игры, NFT и многое другое!
Генерация случайных чисел имеет решающее значение для многих приложений блокчейна. Это имеет решающее значение для обеспечения честного создания функций для NFT, результатов в играх с поддержкой блокчейна (например, лут, перетасовка карт, бросок кубика), назначения задач в DAO и т. д. Результаты имеют реальные финансовые последствия для пользователей, поэтому крайне важно, чтобы их источник случайности был безопасным и не игровым. С постоянно растущим числом приложений и постоянно растущими ценностями крайне важно, чтобы был доступен надежный источник случайности.
Войдите в секретные оракулы («Scrt-RNG») в секретной сети. Используя децентрализацию Secret Network, а также силу смарт-контрактов, сохраняющих конфиденциальность, Secret Oracles может генерировать случайность, расширяя возможности приложений следующего поколения в Secret Network.
Секретные оракулы — это децентрализованный, не требующий доверия источник частной случайности, достигаемый за счет энтропии краудсорсинга для создания случайных чисел, которые не имеют доступа к другим адресам секретной сети (включая другие смарт-контракты, сохраняющие конфиденциальность).
Безопасная случайная генерация
Безопасность является серьезной проблемой для ГСЧ, работающих полностью в сети. Это связано с тем, что блокчейны детерминированы без присущей им случайности. Любой алгоритм псевдослучайных чисел надежен настолько, насколько безопасен источник энтропии, на котором основана его случайность. Таким образом, ключом для любого генератора ГСЧ является частый и постоянный источник энтропии.
Решение Secret Oracle заключается в объединении краудсорсинговой энтропии с ценовой энтропией. Каждая транзакция с Secret Oracles изменяет начальное значение, хранящееся в контракте случайности. Благодаря краудсорсинговой инфраструктуре, чем больше используется секретных оракулов, тем более безопасными они становятся.
Реализация краудсорсинговой энтропии Secret Oracle возможна только в Secret Network, потому что Secret Network имеет четыре важные особенности:
- Частное : все крупномасштабные реализации ГСЧ сегодня производят случайные числа в прозрачных цепочках блоков. Следовательно, выходные данные случайных чисел записываются в цепочке и доступны для публичного просмотра до тех пор, пока существует цепочка блоков. Эта прозрачность ограничивает возможные варианты использования; приложения, которым требуются частные случайные числа, не могут использовать эти ГСЧ. Scrt-RNG предоставит решение, передавая зашифрованные случайные числа, которые видны только пользователю. Важно отметить, что если смарт-контракт взаимодействует с протоколом Scrt-RNG, вывод случайных чисел не будет доступен для просмотра любому пользователю (человеку), если только смарт-контракт пользователя специально не разрешает это.
- Безопасность : случайные числа с высоким уровнем безопасности позволяют использовать приложения с высокими ставками. Безопасность в блокчейн-приложениях существует, когда атаки дороги и сложны. Случайность в цепочке ранее была возможна в Secret Network, но существующие реализации обычно подвергаются различным векторам атак, которые ограничивают либо типы приложений, либо размер ставок, прежде чем злоумышленникам станет экономически целесообразно манипулировать ГСЧ. Примеры векторов атак включают быстрый последовательный запрос случайных чисел (если генератор использует функцию запроса), использование третьего контракта для остановки транзакции, если результат неблагоприятен, и запуск хард-форка для предварительного определения результата. С Scrt-RNG выполнение таких атак будет более сложным, если не невозможным. Это позволяет развертывать приложения с более высокими ставками. в Secret Network и, в конечном итоге, в более широкой экосистеме Cosmos, когда Scrt-RNG станет доступен через IBC Cosmos.
- Ончейн (= отсутствие платы за обслуживание) : сегодня крупномасштабные генераторы случайных чисел имеют значительный элемент вне цепочки, поскольку сложно (если не невозможно) внедрить внутрицепочный ГСЧ на прозрачной цепочке блоков без ущерба для безопасности. Следовательно, наиболее используемый сегодня RNG, VRF Chainlink, требует, чтобы узел оракула генерировал случайные числа вне цепочки, которые затем публикуются в цепочке и проверяются на подлинность с использованием криптографических доказательств. За эту услугу пользователи платят комиссию (в настоящее время 2 ССЫЛКИ на адрес Ethereum за каждый запрос случайного числа, что составляет 31 доллар США по сегодняшним ценам). Scrt-RNG будет реализован таким образом, что не потребуется никаких узлов оракула или токенов поощрения. В результате единственная плата, которую пользователи платят за случайные числа, — это плата за газ.
- Децентрализованный : Scrt-RNG будет реализован как один или несколько смарт-контрактов. После развертывания основной алгоритм будет неизменным и доступным для всех, у кого есть секретный адрес (а позже и для более широкой экосистемы Cosmos). Эта высокая степень децентрализации устраняет любую центральную точку отказа и предлагает ненадежный источник случайности.
Решение Scrt-RNG
Модель с двумя транзакциями: первая транзакция создает случайное число, а вторая транзакция извлекает его. Наличие двух транзакций требуется для устранения уязвимости в моделях с одной транзакцией, когда злоумышленник может затормозить транзакцию, намеренно создав ошибку, если вывод случайного числа нежелателен.
Объединенная энтропия: Scrt-RNG будет генерировать числа на основе начального числа, хранящегося в контракте. Этот дизайн работает в секретной сети, потому что хранилище контракта зашифровано и недоступно для извлечения (в отличие от прозрачных цепочек блоков). Семя изменяется каждый раз, когда пользователь взаимодействует с протоколом. Следовательно, у приложений есть веская причина использовать Scrt-RNG, а не создавать копии, поскольку использование Scrt-RNG позволяет объединять энтропию для повышения безопасности генератора случайных чисел.
Удобный для контрактов: функции дескриптора необходимы для принудительного изменения начального числа при каждом взаимодействии. Однако контракты не могут обрабатывать ответ от другого контракта. Чтобы решить эту проблему, приложение может создать двоичный файл, в котором хранится вся необходимая информация, которая потребуется приложению после получения случайного числа (например, вычисленные значения переменных) в виде двоичного файла («cb_msg»). Cb_msg может быть любым произвольным кодом, который отправляется в первой транзакции и возвращается пользователю во второй транзакции.Контракт может позже использовать cb_msg для продолжения выполнения с того места, где он остановился, вместе с вновь полученным случайным числом.
Несколько вариантов: Scrt-RNG будет иметь два разных генератора для удовлетворения более широкого набора вариантов использования, позволяя пользователям выбирать подходящие компромиссы для своих конкретных приложений. Я описал модель с двумя транзакциями выше. Будет доступна альтернативная модель с одной транзакцией, предлагающая решение для приложений, которые не могут работать с двумя транзакциями. Этот генератор извлекает выгоду из того же пула энтропии, но не защищен от некоторых атак, описанных ранее.
Архитектура модели с 1 транзакцией:
Архитектура двухтранзакционной модели:
По мере того, как инфраструктура Secret Network становится все более многофункциональной, Secret Oracles будет стремиться к дальнейшему совершенствованию дизайна, особенно в отношении безопасности. Частная и безопасная случайность важна для экосистемы, и по мере увеличения стоимости даже узкие векторы атак становятся проблематичными. Scrt-RNG разработан с учетом этого, поэтому будущие контракты или обновления могут извлечь выгоду из существующего пула энтропии.
Первую реализацию Secret Oracles планируется запустить в основной сети в феврале 2022 года в Secret Network, обеспечивая безопасную и частную случайность в цепочке для любого секретного адреса. После обновления инфраструктуры в Secret Network Scrt-RNG будет доступен для других блокчейнов с поддержкой IBC посредством прямого взаимодействия между контрактами.
Что дальше?
Следите за секретными приложениями, которые используют всю мощь секретных оракулов! Разработчики, предприниматели и члены сообщества со всего мира продолжают создавать следующее поколение приложений для сохранения конфиденциальности Web3, основанных на Secret Network. Есть бесчисленное множество вариантов использования, уникальных для Secret Network, которые еще предстоит изучить. Следите за официальными каналами объявлений (такими как Discord и Twitter ) и секретным блогом, чтобы быть в курсе других секретных функций, таких как эта! Кто знает, какие секреты припасены для сообщества…🤫