update wp_posts set post_content = replace(post_content,'spacebot.ltd','spacebot.app');

Блокчейн нуждается во внешней информации

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

Для блокчейнов, которые используются только для расчетов (по данным Coinmarketrate.com, это таких, как Bitcoin, Litecoin, Ripple), это ограничение не является проблемой. Для блокчейнов, предназначенных для запуска смарт-контрактов и приложений (таких, как Cardano, Ethereum и Polkadot, и т. д.), это серьезное ограничение. Способность взаимодействовать с внешним миром и использовать информацию является ключом к раскрытию всего потенциала децентрализованных приложений. Без него все децентрализованные приложения (dApps) будут ограничены только информацией, доступной на их собственном блокчейне.

Например, рассмотрим случай с рынком прогнозирования того, поднимется ли цена ETH до 5 000 к концу 2021 года. Ни одна информация на блокчейне Ethereum не фиксирует цену ETH в долларах США, поэтому рынок предсказаний не смог бы проверить это условие.

Рисунок 1: Разные узлы Ethereum определяют разные случайные числа
Рисунок 1: Разные узлы Ethereum определяют разные случайные числа

Смарт-контракты выполняются отдельно и независимо на каждом узле. Таким образом, в приложении, использующем случайные числа, каждый узел может определить другое случайное число и получить другой результат (см. рис. 1). Множественные результаты не позволят блоку достичь своего завершения, так как консенсус не может быть достигнут. Кроме того, это нарушает детерминированное свойство блокчейн — способность повторять все транзакции и приходить к одному и тому же результату.

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

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

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

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

Рисунок 2: Оракул, соединяющий блокчейн с Интернетом и друг с другом
Рисунок 2: Оракул, соединяющий блокчейн с Интернетом и друг с другом

Существует два широких типа блокчейн Oracle:

  1. On-chain оракулы действуют как мосты между блокчейнами и позволяют считывать и использовать информацию блокчейна другими блокчейнами. Например, агрегатору децентрализованной многоцепочечной биржи (DEX) для определения наилучшей доступной цены необходимы ценовые каналы от децентрализованных бирж, работающих на Ethereum, Cardano и других блокчейнах. С этой целью on-chain Oracle может путешествовать по DEX на Ethereum, Cardano и других платформах, чтобы найти лучшую цену для агрегатора.

On-chain Oracle также может быть dApp, который предоставляет услуги другому dApp. Например, Uniswap (децентрализованный протокол для автоматического создания рынка) знает цену между любыми двумя активами через свой пул ликвидности. Все dApp, которым нужна ценовая взаимосвязь между двумя активами, могут использовать эти данные.

  1. Off-chain оракулы действуют как промежуточное программное обеспечение, соединяющее блокчейн с миром не блокчейна. Например, допустим, маршрут доставки товара записывается в блокчейн. Здесь протокол off-chain подключается к датчикам, считывающим метку ближней связи (NFC) продукта на различных станциях. Затем эти данные передаются в блокчейн, где они записываются.

Их можно классифицировать и другими способами:

Входящие и исходящие оракулы: входящие оракулы передают информацию извне блокчейна в блокчейн. Исходящий Oracle делает все наоборот, он передает данные из блокчейна во внешнюю среду.

Программное, аппаратного обеспечения и человек

Программные оракулы получают данные из интернета, других блокчейнов и dApps, API и так далее. Аппаратный Oracle может подключить устройство Интернета вещей (IoT), которое сообщает данные реального мира, к блокчейну. Человек также может выступать в роли оракула, как в случае с рынком предсказаний Augur. Там пользователь может поставить на то, что произойдет определенный исход.

Проблема оракула

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

Злоумышленникам не обязательно атаковать узлы блокчейна, если они могут манипулировать Oracle, используемым для введения ложных данных в блокчейн. В продолжение предыдущего примера: вредоносный агент, контролирующий Oracle, сделал ставку на то, что цена ETH останется ниже 5 000 $ в 2022 году. Таким образом, он никогда не позволит оракулу отправить в блокчейн цену, превышающую 5 000 $, чтобы смарт-контракт был выполнен правильно.

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

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

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

Примеры использования

Чтобы понять повсеместное использование решения, давайте рассмотрим некоторые примеры использования.

  • Децентрализованное финансирование (DeFi)

Приложения DeFi имеют обширные потребности в данных для эффективного предоставления финансовых решений. Например, протокол Maker Protocol, который предоставляет займы под залог DAI, полагается на ценовые данные от Oracles. Это позволяет ему определить, сколько DAI на единицу криптовалюты нужно выдать в качестве залога. Он также использует Oracles для обеспечения того, чтобы уже выпущенные DAI всегда были достаточно обеспечены.

  • Операционная совместимость

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

  • Цепочки поставок

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

Чтобы достичь этого полностью автоматически и без конфликтов, Oracle должен использоваться в сочетании с механизмом отчетности, таким как метки Near Field Communication (NFC). Таким образом, в блокчейн может быть занесен весь путь товара по цепочке поставок. Любая заинтересованная сторона может впоследствии проверить это самостоятельно и быть уверенной в достоверности данных.

  • Рынки прогнозирования

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

  • Игровой бизнес / Азартные игры

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

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

Что такое NFT и как он работает - image
NTF

Что такое NFT и как он работает

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