6 декабря 2022

Что такое оракулы и где брать оффчейн-данные на Tezos?

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

Зачем нужны оракулы

Блокчейн-протоколы оторваны от остального интернета. Смарт-контракты не могут просто так получить оффчейн-данные: котировки из централизованных бирж, температуру воздуха в Нью-Йорке или количество лайков под постом в Twitter. Чтобы узнать эту информацию, нужно воспользоваться специальным сервисом — оракулом.

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

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

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

Как работают оракулы

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

Децентрализованные оракулы не нуждаются в доверии. Они работают так:

  1. К контракту оракула подключены несколько узлов, которыми владеют разные люди или компании.
  2. Пользователь запрашивает у оракула цену tez к USD на Binance.
  3. Оракул передает запрос узлам.
  4. Каждый узел получает у Binance данные и передает их оракулу.
  5. Оракул верифицирует данные и добавляет их в контракт.
  6. Пользователь получает цену.

По тому же принципу оракулы могут отправлять ончейн-данные в оффчейн.

Какие контракты-оракулы есть на Tezos

На Tezos работают несколько оракулов: Ubinetic, Kaiko и Harbinger.

Ubinetic — прошедшее аудит безопасности Compass Security решение для оракулов на основе аттестации ключей Android и встроенных аппаратных модулей безопасности. В общем, узлы работают на смартфонах, данные подписываются ключом и ответ оракула невозможно подделать. Исходный код и инструкции по использованию есть в репозитории Ubinetic на Github, а взять цены можно из контракта Ubinetic Index Oracle.

Kaiko — поставщик данных о рынке криптовалют. В июне 2020 платформа объявила, что будет выкладывать ценовые потоки tez для сетевого оракула на блокчейне Tezos. Kaiko записывает исторические и текущие обменные курсы XTZ/USD и XTZ/CHF в каждый новый блок Tezos раз в минуту и записывает их в смарт-контракт Kaiko.

B9 lab — провайдер, позволяющий запрашивать внешний источник данных с помощью Harbinger. Harbinger — это ценовой оракул для цифровых активов. Он предоставляет набор инструментов и справочных контрактов. В мейннете работает несколько контрактов, которые постоянно обновляют цены популярных криптовалют. Например, Harbinget Normalizer хранит цены tez, BTC, ETH, LINK, BAT и других.

Подписывайтесь на социальные сети Tezos Ukraine, чтобы ничего не пропустить:

  1. Telegram-канал
  2. Facebook
  3. Twitter на украинском языке
  4. Twitter на русском языке
  5. Twitter на английском языке
  6. YouTube-канал
  7. Instagram
  8. LinkedIn

Обсудить в Discord!