Почему ваше децентрализованное приложение нуждается в децентрализованном Оракуле

Alexey
iExec Russian
Published in
6 min readJul 29, 2019
Если вы создаете децентрализованное приложение на Ethereum и пытаетесь решить реальную проблему, скорее всего, вам нужно будет подключиться к реальному миру …

Сегодня Web 3.0 приносит в мир новую парадигму. Благодаря блокчейну и смарт-контрактам люди теперь могут полностью доверять выполнению фрагмента кода. Это очень важно. Некоторые заходят так далеко, что говорят “код — это закон”. Мечта о мире без центральной власти, где взаимодействия могут обойтись без посредников, становится реальностью, а децентрализованные приложения (DApps) воплощают этот новый сдвиг.

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

Как разработчик, открывающий для себя страну чудес Ethereum, ваша первая мысль при реализации оплачиваемой функции в Solidity с двумя строками кода может быть «Ух ты, как ловко!». И вы были бы правы. После попытки понять весь новый мир возможностей, которые открываются перед вами, следующим шагом будет кодирование смарт-контракта, который решает проблемы реального мира. Предположим, вы решили создать стейблкоин (stablecoin). Этот смарт контракт будет брать цену ETH/USD с CoinMarketCap, прежде чем выпустить ваш новый стейблкоин на основе данного обменного курса. Достаточно просто? Подождите, не так быстро. Вы не можете делать запросы к Web 2.0, с помощью языка программирования смарт-контрактов Solidity “Не знали?”. Все верно, в Solidity нет функции wget. На самом деле, блокчейны полностью отключены от Интернета!

Итак, с одной стороны, вы открываете для себя этот новый мир, Web 3.0, который предлагает надежные исполнения кода. А с другой стороны, у вас есть традиционный Web 2.0, золотая жила с терабайтами ценных данных.

Что если бы вы могли соединить эти два мира? Открывая для себя целый ряд новых впечатляющих децентрализованных приложений (DApps) …

Соединение Web 2.0 и Web 3.0

Хорошей новостью является то, что такой механизм моста существует, и его называют оракулом (oracle).

Что такое Оракул?

Когда мы думаем об Oracle, это часто вызывает мысль о счастливой пожилой женщине из саги «Матрица», которая курит сигареты, печет печенье и может предсказать будущее. Она оказывается не более чем компьютерная программа, интегрированная в суровое испытание Матрицы.

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

Уязвимости существующих оракулов

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

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

Познакомьтесь с iExec DOracle — Децентрализованный Оракул для Ethereum

Децентрализованный Оракул iExec (DOracle), прежде чем возвратить сертифицированные результаты обратно в блокчейн, использует облако iExec, которое выполняет логику приложения офф-чейн. Сертификация достигается с использованием он-чейн консенсуса (протокол консенсуса iExec PoCo) для того, чтобы можно было доверять результатам выполнения DOracle и иметь “on-chain” подтверждение событий “off-chain”.

Делайте запросы к Web 2.0 прямо из вашего смарт-контракта с гарантией правильного результата с помощью iExec DOracle.

Устранение ограничений подключения блокчейна Ethereum было естественным примером для платформы iExec, учитывая наши командные исследования и опыт в облачных вычислениях и блокчейне. Представленный с релизом iExec V3 в мае 2019 года, “iExec DOracle” фактически основан на технологии iExec, над которым команда работала в течение последних двух лет. Как разработчик Ethereum, если вы хотите создать новое поколение эффективных децентрализованных приложений (DApps), которые решают проблемы реального мира,

вам наверняка понадобится способ подключения вашего децентрализованного приложения (Dapp) к Web 2.0.

В этом случае iExec DOracle удаляет каждый шаг иногда болезненного процесса эксплуатации оракула:

  1. Предоставление машины по требованию в децентрализованном облаке iExec! Это освобождает разработчиков Ethereum от навигации по консоли AWS EC2 с целью предоставления машины. Фактически, вам даже не нужно иметь учетную запись AWS или Google Cloud.
  2. Поддержка Docker! Это означает, что помимо извлечения нужных вам данных вы можете свободно добавлять любые виды обработки данных до/после в логику вашего приложения, при условии, что вы сможете их докеризовать.
  3. Библиотека Web3 больше не помеха в реализации логики вашего приложения! Мы позаботимся о том, чтобы ваш результат был отправлен на прямую в сеть Ethereum без необходимости написания «кода Web3».
  4. Гибкий уровень доверия! Не все децентрализованные приложения (dapps) нуждаются в одинаковом уровне децентрализации на уровне Оракула. Вы можете решить доверять приватному поставщику облачных услуг, или вместо этого вы можете предпочесть высоко децентрализованный ончейн консенсус, используя консенсусный протокол iExec PoCo (Proof-of-Contribution) в общественном пуле работников. Вы в праве выбирать сами.

iExec DOracle в сравнении с другими оракулами?

Как разработчику децентрализованного приложения (Dapp), ваше решение о том, чтобы смарт-контракт полагался на чьей-либо оракул, не следует воспринимать легкомысленно. Помимо 4 пунктов, упомянутых выше, вот основные преимущества выбора децентрализованного оракула iExec (DOracle) в качестве моста между вашим децентрализованным приложением (DApp) к данным в реальном мире:

  1. Жизнь проекта в основной сети Ethereum. Печально это говорить, но на самом деле это стоит упомянуть. С таким количеством проектов, появляющихся в крипто пространстве, лишь немногие из них действительно могут обслуживать свои смарт-контракты в основной сети Ethereum.
  2. Ясная и конкурентная ценовая политика на вычислительные ресурсы. Платформа iExec построена на открытом Маркетплейсе (iExec Marketplace) с офф-чейн книгой ордеров, что позволяет ее участникам корректировать свои цены в зависимости от текущего предложения и спроса. iExec не принимает решение о цене, рынок сам диктует ее.
  3. Удобное отслеживание и отладка каждого запроса DOracle. Как разработчик, вы хотите иметь возможность отслеживать состояние всех оффчейн запросов. Это именно то, что позволяет сделать проводник iExec (iExec Explorer).
  4. Безопасное хранение API-ключей, используемых для извлечения данных. Скорее всего, ваш API защищен ключом/токеном и вы бы не хотели утечки своего ключа, за который заплатили, не так ли? Не беспокойтесь мы вас прикроем. Ключи могут храниться и шифроваться, и вы даже можете начать зарабатывать RLC с помощью своего API-ключа, разместив его в кошелек данных iExec (iExec Data Wallet), но прежде обязательно прочитайте API TOS.
  5. Актуальная документация и рабочий пример. Не нужно верить нам на слово, взгляните на пример!

С чего начать? Баунти программы обучения разработчиков

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

Присоединяйтесь к нам:

iExec 🇷🇺

Веб-СайтTelegramVKontakteInstagramTwitter • Facebook • YoutubeMediumGolosТехническая документация

iExec 🇺🇸

WebsiteMediumSlackTelegramRedditTwitterFacebookLinkedInYoutubeGithubInstagramTechnical Documentation

Хотите подписаться на проект iExec? Интересно что будет дальше?
Перед выпуском iExec V4 (версия высокопроизводительных вычислений с поддержкой GPU) в этом году, мы будем давать больше новостей о последних событиях каждого из последних анонсов. Чтобы первыми узнавать и получать эксклюзивные обновления, подпишитесь на новостную рассылку iExec и следите за нами в социальных сетях.

Читайте подробнее о релизе iExec V3:

Читайте подробнее о 7 основных анонсах релиза iExec V3:

Дорожная карта iExec идет с опережением графика. Релиз iExec V4, версия высокопроизводительных вычислений с поддержкой GPU, выйдет намного раньше, чем планировалось и будет выпущена в декабре этого года!

--

--