Что такое оракул блокчейна и как он работает?

Что такое оракулы блокчейна?

Оракулы блокчейнов - это сущности, которые подключают блокчейны к внешним системам, позволяя выполнять смарт-контракты в зависимости от реальных входов и выходов. Oracle предоставляет экосистеме Web 3.0 метод подключения к существующим устаревшим системам, источникам данных и расширенным вычислениям.

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

Допустим, Алиса и Боб хотят сделать ставку на результат скачек. Сумма в 80 долларов хранится на депонировании с помощью смарт-контракта, при этом Алиса ставит 50 долларов на команду X, а Боб ставит 30 долларов на команду Y. Как смарт-контракт узнает, отдавать ли деньги Алисе или Бобу, когда игра окончена? Решение состоит в том, что требуется механизм оракула для получения точных результатов матчей вне сети и безопасной и надежной доставки их в блокчейн.

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

Консенсус - это метод согласования значения данных в блокчейне, и для достижения консенсуса узлам требуется детерминизм. Некоторые из них могут быть вам знакомы, например, доказательство работы (PoW) с консенсусом Накамото и доказательство ставки (PoS) с византийским консенсусом. Одним из основных факторов, которые заставляют блокчейн работать в первую очередь, является консенсус.

Однако мир блокчейнов должен быть связан с реальным миром. Чтобы иметь DeFi, нам нужно указать цену эфира (ETH) и других криптовалют в контракте. Нам требуются метеорологические данные для обеспечения децентрализованного и надежного страхования. Чтобы использовать блокчейн для одного из самых важных его применений, смарт-контрактов, нам нужны данные. Итак, учитывая это ограничение, как нам соединить миры?

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

Проблема оракула блокчейна

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

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

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

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

Что делают оракулы блокчейна?

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

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

Chainlink является отраслевым стандартом для децентрализованных оракулов, поскольку он преодолевает как доступ к внешним данным, так и проблемы централизации смарт-контрактов. Итак, что такое оракулы Chainlink?

Chainlink - это децентрализованная сеть оракулов, которая передает реальные данные в смарт-контракты блокчейна. Токены LINK - это токены цифровых активов, используемые для оплаты сетевых услуг.

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

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

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

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

Другими известными оракулами блокчейнов являются Witnet, Paralink, Provable и Dos.Network. Эти службы предоставляют оракулы, состоящие из смарт-контракта и некоторых компонентов вне сети, которые могут запрашивать пользовательские интерфейсы приложений (API), а затем отправлять транзакции для регулярного обновления данных в смарт-контракте.

Типы оракулов блокчейна

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

Аппаратные и программные оракулы

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

Входящие и исходящие оракулы

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

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

Централизованные и децентрализованные оракулы

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

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

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

Смарт-контракт обращается к нескольким оракулам для оценки достоверности и точности данных; Вот почему децентрализованные оракулы также известны как оракулы консенсуса. Другие блокчейны могут использовать децентрализованные службы Oracle, предоставляемые некоторыми проектами блокчейнов Oracle.

Человеческие оракулы

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

Оракулы для конкретного контракта

Эти оракулы созданы для работы с одиночными смарт-контрактами. Если разработчик намеревается развернуть множество смарт-контрактов, необходимо будет создавать различные оракулы для конкретных контрактов.

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

Вычислительные оракулы

Мы только что говорили об оракулах с точки зрения поиска и предоставления данных (также известных как оракулы-носители данных или автоматические оракулы). Однако оракулы можно использовать для выполнения любого произвольного вычислительного решения вне сети, что особенно полезно с учетом присущих Ethereum ограничений по блоку газа и очень высокой стоимости вычислений.

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

Шаблоны проектирования Oracle

По определению, все обсуждаемые оракулы выполняют несколько ключевых ролей. Эти возможности включают возможность:

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

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

Три основных способа настройки оракула можно разделить на следующие категории:

Немедленное чтение

Оракулы для немедленного чтения предоставляют информацию, которая требуется только для быстрого принятия решения, например:«Этому учащемуся больше 25?» Те, кто хочет запросить этот тип данных, обычно делают это «точно в срок», что означает, что поиск выполняется только тогда, когда информация необходима.

Примеры:телефонные коды, академические сертификаты, членство в учреждениях, идентификация аэропорта и другие оракулы.

Опубликовать-подписаться

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

Запрос-ответ

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

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

Приложения оракулов в DApps

Oracle - это механизм для преодоления разрыва между миром вне сети и смарт-контрактами, используемыми многими DApps на рынке. Ниже приведены некоторые примеры данных, которые могут предоставить оракулы:

  • Данные времени и интервалов используются для триггеров событий на основе точных измерений времени.

  • Данные с рынков капитала, например ценовые пакеты токенизированных активов и ценных бумаг.

  • Контрольные данные, такие как процентные ставки, включенные в интеллектуальные производные финансовые инструменты.

  • Данные о погоде, например, используются для расчета страховых взносов на основе прогнозов погоды.

  • Данные о геолокации, например те, которые используются для отслеживания цепочки поставок.

  • Для договоров страхования требуется проверка ущерба.

  • Спортивные события используются для разрешения рынков прогнозов и контрактов на фэнтези-спорт.

  • Статистика полетов, например, используемая группами и клубами для объединения авиабилетов.

Остерегайтесь проблем безопасности

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

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

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


Блокчейн
  1. Блокчейн
  2. Биткойн
  3. Ethereum
  4. Обмен цифровой валюты
  5. Добыча полезных ископаемых