Введение
Оракулы в контексте Web3 относятся к потокам данных, которые передают данные из источников данных вне блокчейна и развертывают их в блокчейне для интеллектуальных целей. Оракулы выступают посредниками между миром за пределами блокчейна и самим блокчейном. Благодаря оракулам становится возможным обмен информацией между этими двумя пространствами.
Оракулы необходимы, потому что смарт-контракты работают на некоторых блокчейнах, не могут получить доступ к информации, хранящейся вне сети блокчейна. Включение смарт-контрактов для выполнения с использованием входных данных вне цепочки увеличивает ценность децентрализованных приложений.
Например, предположим, что Джейд ставит 10 ETH на то, кто станет следующим президентом Нигерии, приложению для прогнозирования потребуется оракул, чтобы подтвердить результаты выборов и определить, имеет ли Джейд право на выплату.
Для этого оракулы должны будут проверить и утвердить эти данные перед их загрузкой и сохранением в блокчейне. Следовательно, надежные источники информации необходимы для оракулов.
Более того, помимо простого извлечения данных из цепочки и трансляции их в Ethereum , оракулы также могут передавать информацию из блокчейна во внешние системы. Примером может служить оракул, который разблокирует интеллектуальную блокировку, как только пользователь отправляет комиссию через транзакцию Ethereum.
Теперь мы видим, что оракулы очень важны для блокчейна, поскольку они даже способны запускать функции смарт-контрактов, используя данные вне цепочки. Они выступают источником внешней информации для смарт-контрактов в сети.
Проблема Oracle
Поскольку к настоящему времени мы должны быть хорошо осведомлены о том, как работает сеть блокчейнов, можно с уверенностью сказать, что блокчейн построен на точности и прозрачности транзакций между сторонами. Информация и транзакции между пользователями должны быть достоверными, точными и прозрачными, чтобы избежать расхождений в сети.
При этом разрешение оракулам предоставлять информацию в блокчейн может представлять определенные угрозы для сети. Как мы можем быть уверены, что предоставленная информация действительна и актуальна? Как мы можем быть уверены, что информация будет доступна и регулярно обновляться?
Различные оракулы различаются по своим моделям и типам и, следовательно, различаются способами решения проблемы оракула. Мы обсудим это более подробно ниже.
Шаблоны проектирования Oracle
Оракулы предоставляют информацию, используя различные шаблоны. Эти шаблоны включают немедленное чтение, публикацию-подписку и запрос-ответ.
Немедленное чтение: это работает путем сохранения данных в подключенном смарт-контракте. Он предоставляет информацию в режиме реального времени, такую как колебания цен на акции, информацию о погоде или даже результаты футбольного матча.
Публикация-подписка: этот шаблон оракула работает, позволяя dApps подписываться на определенные источники данных и получать обновления при публикации новых данных. Приложение dApp может указать тип интересующих его данных и частоту обновлений, и оракулы будут отправлять данные в приложение dApp по мере их появления. Примером может служить оракул, который предоставляет пользователям информацию о последней цене ETH-USD.
Запрос-ответ: этот шаблон оракула работает, позволяя dApps запрашивать определенные данные у оракула, указывая тип необходимых ему данных, и оракул возвращает запрошенные данные. Эти оракулы запрос-ответ идеальны в тех случаях, когда набор данных слишком велик для хранения в хранилище смарт-контракта (поскольку смарт-контракты не могут хранить большой объем данных) или пользователю нужна только небольшая часть данных.
Типы оракулов
1. Централизованные оракулы
Централизованный оракул — это оракул, которым управляет одна организация. Этот единый объект отвечает за обновление и доставку информации вне цепочки в блокчейн. Поэтому централизованные оракулы предпочтительнее в тех случаях, когда проприетарные наборы данных публикуются непосредственно владельцем с широко распространенной подписью. Однако их критиковали по определенным причинам:
Единая точка отказа. Поскольку централизованный оракул контролируется одним объектом, это означает, что в случае сбоя этого единственного объекта может выйти из строя и вся система. Это создает потенциальную возможность цензуры или манипулирования данными, передаваемыми в блокчейн.
Доступность. Не всегда можно доверять централизованным оракулам, которые при необходимости сделают данные вне цепочки доступными для смарт-контрактов. Если организация решит отключить операции, подключенные смарт-контракты окажутся под угрозой.
Несогласованность стимулов. Централизованные оракулы обычно мотивированы прибылью, что может привести к несогласованности стимулов с пользователями децентрализованных приложений. Например, централизованный оракул может поставить свои интересы выше точности предоставляемых данных.
Проблема правильности при наличии только одной точки подачи данных невозможно подтвердить, верны или нет предоставленные данные. Даже если предоставленное является признанным, все равно существует вероятность дезинформации.
2. Децентрализованные оракулы
Децентрализованный оракул — это тип оракула, который работает не требующим доверия и децентрализованным образом, позволяя передавать данные из мира оффчейн в блокчейн, не полагаясь на единый объект. Децентрализованные оракулы преодолевают ограничения централизованных оракулов. В децентрализованной сети оракула данные предоставляются несколькими узлами, что можно стимулировать с помощью токенов или других механизмов для предоставления точных и достоверных данных.
Это означает, что для обеспечения еще более точных данных децентрализованные оракулы используют определенные механизмы для достижения конкретного результата, поскольку несколько источников предоставляют данные вне цепочки. Примером этого механизма является механизм голосования или ставок.
Голосование или ставки. Некоторые децентрализованные оракулы требуют, чтобы участники голосовали или делали ставку на точность ответов на запросы данных с использованием собственного токена сети. Например, если для контракта требуются оффчейн данные текущего президента США, узлы будут передавать свои ответы в потоковом режиме, и эти ответы будут проходить через голосование для принятия решения. Ответ будет определен большинством голосов или ставок.
Некоторые преимущества децентрализованных оракулов включают в себя:
Отсутствие доверия: децентрализованные оракулы полагаются на сеть узлов, что устраняет необходимость в едином надежном источнике и делает данные более надежными и прозрачными.
Безопасность. Благодаря нескольким узлам, предоставляющим данные, снижается риск возникновения единой точки отказа, что делает информацию более безопасной.
Сопротивление цензуре: децентрализованные оракулы не контролируются одной организацией, что затрудняет цензуру любой стороной информации, передаваемой в блокчейн.
Доступность: поскольку различные узлы предоставляют данные вне цепочки в блокчейн, данные всегда могут быть доступны, когда это необходимо.
Защита от несанкционированного доступа: поскольку информация, предоставляемая децентрализованными оракулами, хранится в блокчейне, ее нелегко изменить или подделать.
Сфера применения оракулов Web3
DeFi: во время финансовых транзакций в сети для эффективности транзакции необходима финансовая информация, такая как цена токенов, обменные курсы, рыночная стоимость и т. д.
Идентификация: оракулы могут использоваться для проверки и обновления личности пользователя из источников вне сети.
Генерация результатов для событий. События, происходящие вне блокчейна, можно администрировать в блокчейне с помощью оракулов. Например; Изначально Джейд делала ставку на результаты выборов в Нигерии.
В заключение, оракулы жизненно важны для расширения функций блокчейна и расширения информации, доступной в блокчейне. Уже существующие блокчейн-оракулы включают Chainlink, Witnet, DIA и т. д.
Комментарии
Комментарии для сайта Cackle