Оракул в блокчейне: кто сообщает смарт-контракту цену

25 мин. чтения
BYBIT · СПОТ И ФЬЮЧЕРСЫ
Крипта с нуля
Комиссия 0,1%, торги 24/7, старт с $10
Открыть счёт

Коротко (TL;DR)

  • Оракул в блокчейне — это служба, которая добывает данные из внешнего мира и записывает их в блокчейн так, чтобы программа-контракт могла их прочитать. Курса ETH, счёта футбольного матча, факта поставки груза, ставки центробанка внутри блокчейна нет — там есть только то, что кто-то туда внёс транзакцией.
  • Блокчейн не ходит в интернет сам не из-за недоработки, а по конструкции: любую транзакцию перепроверяют тысячи независимых компьютеров, и все обязаны получить одинаковый результат.
  • Работают две модели доставки. Push — оракул сам публикует новое значение по расписанию или по отклонению цены. Pull — значение подписывается вне блокчейна, а вносит его в блокчейн сам пользователь в момент своей сделки. Разница определяет, кто платит комиссию и насколько свежую цену видит контракт.
  • Рынок перекошен в одну сторону: по данным DeFiLlama на 1 августа 2026 от фидов Chainlink зависит $32,516 млрд стоимости в 514 протоколах — против $3,861 млрд у RedStone и $2,457 млрд у Pyth.
  • Оракул — структурно самое слабое звено всей конструкции: контракт не может проверить, врёт ли ему источник. В научной литературе это называют проблемой оракула (blockchain oracle problem), и она не решена.
  • Цена вопроса измерима: от $633 тыс. у bZx в феврале 2020 до $18 млн у Ostium в июле 2026. Причём в 2026 году ломают уже не рынок, а инфраструктуру доставки цены — от старых атак защищались усреднением, от новых оно не помогает.

Что такое оракул простыми словами

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

Этот разбор — урок блока «Вход: с чего начинается DeFi» курса «DeFi: от первой транзакции до профи-стратегий».

Бытовая аналогия. Двое поспорили на 100 USDC, чем закончится матч, и положили деньги в автомат, который сам отдаст выигрыш победителю. Автомат честный, взломать его нельзя — но стоит он в комнате без окон и дверей, телевизора в ней нет. Кто-то должен просунуть внутрь записку со счётом. Весь смысл темы — в правилах вокруг этой записки: кто имеет право её писать, сколько человек пишут независимо друг от друга, что теряет тот, кто напишет неправду. Автомат — это смарт-контракт, программа, которая исполняется автоматически и необратимо. Оракул — это регламент передачи записки.

Отсюда же ответ на вопрос, чем оракул отличается от обычного API. Обычному приложению API просто отдаёт число: если оно окажется мусорным, разработчик увидит это в логах, откатит операцию и позвонит поставщику. Смарт-контракт ничего не откатит — он исполнит перевод и заберёт залог по тому числу, которое ему дали. Поэтому оракул не сводится к «API для блокчейна»: к каналу данных добавляются подписи узлов, агрегация нескольких источников и экономические стимулы для тех, кто это подписывает.

Bybit · Rewards Hubдо $30,100Внеси депозит, торгуй 14 дней — и забери награды в Rewards HubЗабрать бонус →

Почему смарт-контракт не может сам сходить в интернет

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

Теперь представим, что контракт умеет делать HTTP-запрос. Одна нода проверяет транзакцию в 12:00:01 и получает цену $3 200. Вторая проверяет её через минуту и получает $3 204. Третья не получает ничего: сервер ответил ошибкой. Три ноды пришли к трём разным состояниям сети — консенсуса нет, блокчейн встал. Именно поэтому у контракта нет и не будет функции «сходи и посмотри».

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

  • любые внешние данные в блокчейне — это чья-то транзакция, за которую кто-то заплатил комиссию (и значит, у обновления цены есть себестоимость);
  • в блокчейне лежит не «настоящая цена», а число, которое кто-то записал, и контракт работает именно с ним.

Как устроен оракул: путь одного числа

Разберём маршрут на примере ценового фида — самого массового случая.

  1. Сбор. Узлы оракульной сети тянут данные из множества независимых мест: централизованные биржи, DEX, агрегаторы. RedStone, например, в своей документации указывает более 150 интегрированных источников — Binance, Coinbase, Uniswap, CoinGecko и другие. Pyth идёт другим путём: у него более 120 поставщиков первой руки — биржи, маркетмейкеры и торговые фирмы отдают данные напрямую, без посредника-парсера.
  2. Агрегация. Из набора чисел получают одно. Считают медиану, средневзвешенную по объёму торгов, среднюю за период; отдельно работает отсев выбросов — если один источник показывает цену в разы выше остальных, его значение выкидывают. RedStone прямо описывает методики median, TWAP и LWAP и проверку на аномальные значения.
  3. Подпись. Каждый узел подписывает своё значение собственным ключом. Это ключевой момент: контракт-получатель потом проверяет подписи и понимает, что данные пришли именно от известного набора узлов, а не от случайного адреса.
  4. Публикация в блокчейне. Итоговое значение попадает в контракт-агрегатор. Протоколы читают его не напрямую, а через постоянный адрес-прокси, — чтобы оракул мог обновить внутреннюю реализацию, не заставляя всех переписывать код.
  5. Потребление. Кредитный протокол берёт число и считает по нему стоимость залога. Проверить, соответствует ли оно реальному рынку, он не может — у него нет доступа к рынку. Он может только сравнить это число с другим числом от другого оракула, если разработчики такую проверку заложили.

Отдельно стоит запомнить пункт 2. Оракул почти никогда не передаёт «цену с биржи» — он передаёт результат расчёта по нескольким источникам. Именно поэтому единичный всплеск на одной площадке обычно не пролезает в фид, а вот согласованный сдвиг сразу на нескольких — пролезает.

Push и pull: кто платит за свежую цену

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

Push-модель (так работают Chainlink Data Feeds). Оракул сам решает, когда пора обновить значение в блокчейне. По документации Chainlink новый раунд агрегации запускается по одному из двух условий, что сработает раньше: Deviation Threshold — офчейн-цена ушла от записанной больше чем на заданный процент, или Heartbeat Threshold — с прошлого обновления прошло заданное время. Условный фид с порогом 0,5% и хартбитом в час обновится либо при движении рынка на полпроцента, либо раз в час на стоячем рынке.

BYBITВсё ещё смотришь со стороны?Рынок работает без выходных. Счёт на Bybit открывается за 2 минуты.Начать сейчас

Pull-модель (так работает Pyth). Цена в блокчейн постоянно не пишется. Обновления формируются и подписываются вне блокчейна очень часто — по документации Pyth каждый фид обновляется раз в 400 миллисекунд, — а в блокчейн подписанное значение вносит сам пользователь: его транзакция одновременно обновляет цену и использует её. Наш обзор Pyth Network разбирает экономику и токен этого проекта подробнее.

Разница не техническая мелочь, а вопрос себестоимости. В push-модели за газ платит сама оракульная сеть (точнее, тот, кто спонсирует фид), поэтому число фидов и число поддерживаемых блокчейнов упирается в бюджет: каждая новая пара и каждая новая сеть — это постоянные расходы. В pull-модели платит пользователь в момент сделки, и расходы оракула почти не растут с числом фидов, — отсюда заявленная поддержка Pyth более чем на 100 блокчейнах.

ПараметрPush (Chainlink Data Feeds)Pull (Pyth, RedStone)
Кто инициирует записьоракульная сетьпользователь/протокол в своей транзакции
Кто платит комиссию сетиспонсор фидатот, кто совершает сделку
Частота обновленияпо порогу отклонения или по таймеруподпись вне блокчейна каждые 400 мс, запись — по требованию
Свежесть в момент сделкизначение может быть «вчерашним» в пределах порогазначение подтягивается прямо перед использованием
Ограничитель ростастоимость газа на каждый фид и сетьсложность интеграции, обязанность обновлять на стороне клиента
Что видит контрактвсегда готовое число по адресучисло появится, только если его кто-то принесёт

У обеих моделей своя цена ошибки. У push цена между обновлениями «застывает»: пока движение не превысило порог, контракт читает старое значение, и это ровно то окно, в которое целятся при манипуляции. У pull свежесть выше, но ответственность смещается на интегратора: если протокол не обновил цену перед расчётом, он посчитает по устаревшей — документация Pyth отдельно предупреждает об этом.

Виды оракулов: не только цены

Признак деленияРазновидностиСуть
Степень децентрализациицентрализованный / децентрализованныйодин узел и один ключ против сети независимых узлов с агрегацией и стейком. Это главное деление: централизованный оракул — единая точка отказа, компрометация одного сервера меняет цену для всего протокола
Направлениевходящий / исходящийвходящий несёт данные из мира в блокчейн (цена, погода), исходящий — из блокчейна наружу (сообщить платёжной системе, что оплата прошла)
Природа источникапрограммный / аппаратныйпрограммный читает API и биржи, аппаратный снимает показания с датчика, RFID-метки или GPS-трекера
Задачаценовой фид / вычислительный / оптимистичныйфид отдаёт число; вычислительный выдаёт результат расчёта, который нельзя сделать в блокчейне (например, случайное число — VRF); оптимистичный принимает утверждение под залог и ждёт оспаривания
Источник данныхвнешний / внутриблокчейновыйвнешний берёт данные с рынка снаружи, внутриблокчейновый считает их по самому блокчейну — как TWAP на DEX

Про последнюю строку стоит сказать отдельно. TWAP-оракул (time-weighted average price) не обращается ни к каким внешним сервисам: он берёт среднюю цену за период из пула децентрализованной биржи, например Uniswap. Плюс очевиден — не нужно доверять третьей стороне, данные уже в блокчейне. Минусы тоже: усреднение по определению отстаёт от рынка, и защищает оно только от мгновенного всплеска — на тонком пуле удержание неверной цены в течение нескольких блоков стоит атакующему не так дорого, как кажется.

Кто держит рынок оракулов

Ниже — сравнение пяти заметных игроков. Значения TVS (total value secured, «стоимость под защитой» — сколько денег в протоколах опирается на данные этого оракула) взяты из рейтинга DeFiLlama на 1 августа 2026.

ОракулМодель доставкиОткуда данныеTVS (DeFiLlama, 1 авг. 2026)ПротоколовТипичное применение
Chainlinkpush (плюс отдельные pull-продукты)сеть независимых узлов, агрегирующих биржи и агрегаторы$32,516 млрд514кредитные протоколы, RWA, резервы, кроссчейн
Chroniclepushнабор валидаторов экосистемы MakerDAO/Sky$7,378 млрд13обеспечение стейблкоинов
RedStonepull и push (модульно)150+ источников: CEX, DEX, агрегаторы; медиана, TWAP, LWAP$3,861 млрд96LST/LRT, доходные и рестейкинг-протоколы
Pythpull120+ поставщиков первой руки: биржи, маркетмейкеры, торговые фирмы$2,457 млрд310перп-DEX и торговля, где важна свежесть цены
UMAоптимистичный оракулчеловек-заявитель + залог + арбитраж голосованием$365,98 млн9рынки предсказаний, страхование, кроссчейн-проверки

Из таблицы видно то, чего не видно в списках «главные оракулы»: TVS и популярность — разные вещи. У Pyth интеграций втрое больше, чем у RedStone (310 против 96), а стоимость под защитой — почти вдвое меньше. Ничего загадочного: TVS измеряет размер обеспечения у протоколов-клиентов, а pull-оракулы чаще берут туда, где важна скорость, а не размер залога, — в торговые площадки.

UMA — принципиально другой класс, и это важно понять. Это не поставщик числа по подписке: интегратор публикует утверждение («матч закончился 2:1», «груз доставлен», «условие страхового случая выполнено») и вносит залог. Дальше идёт окно оспаривания: если никто не спорит, утверждение принимается как истина; если спорят — решение принимает голосование держателей токена UMA, а неправая сторона теряет залог. Такой оракул годится ровно для тех данных, которые нельзя снять с биржи. В документации UMA описаны две живые версии — OOv2 для рынков предсказаний, ставок и страхования и OOv3 для кроссчейн-инфраструктуры и проверки транзакций.

API3 решает другую задачу — убирает лишнее звено. В обычной схеме данные поставщика собирает и подписывает сторонний узел-посредник; API3 предлагает поставщикам держать узел самим (first-party), тогда подпись принадлежит источнику данных. Плюс к этому проект строит OEV Network — аукцион на право обновить цену, чтобы прибыль от ликвидаций возвращалась протоколу, а не уходила сторонним ботам. По анонсу запуска на Ronin в феврале 2025 разработчикам стали доступны более 190 фидов.

Отдельная тонкость с цифрами Chainlink. Сам проект в своём дашборде метрик заявляет около $45,6 млрд обеспеченной стоимости и $32,8 трлн накопленного объёма транзакций за всё время работы сети (данные на 27 июля 2026). DeFiLlama на 1 августа 2026 насчитывает $32,516 млрд. Расхождение почти на треть — не ошибка одной из сторон, а разные методики: DeFiLlama складывает TVL протоколов, которые в его базе помечены как зависящие от фида Chainlink, а сам Chainlink считает шире. Из этого стоит вынести простое: «стоимость под защитой оракула» — не физическая величина вроде объёма торгов, а модельная оценка, и сравнивать её корректно только внутри одной методики.

Где оракулы нужны, кроме цены

Ценовые фиды — самое массовое, но далеко не единственное применение. Документация Chainlink перечисляет несколько семейств данных, и по ним хорошо видно, насколько шире задача:

  • Резервы и активы под управлением. Данные о том, чем обеспечен токенизированный актив: объём резервов, NAV, AUM. Для стейблкоинов и RWA это способ показать обеспечение автоматически, а не пресс-релизом.
  • Аптайм секвенсора L2. Отдельный фид сообщает контракту, что секвенсор второго уровня лежал. Без него протокол ликвидировал бы позиции по цене, которую пользователь физически не мог обновить, — сеть же не принимала транзакции.
  • Ставки и волатильность. Числа, которых на споте нет, но которые нужны деривативам.
  • Случайность (VRF). Блокчейн детерминирован, значит честного случайного числа внутри него не получить — оракул выдаёт число вместе с криптографическим доказательством, что оно не подобрано. На этом работают раздачи NFT, лутбоксы и игровая механика.
  • Исходы событий. Итог матча, результат выборов, факт наступления страхового случая, погода в конкретной точке. Это территория оптимистичных оракулов вроде UMA — числа с биржи тут не помогут.
  • Возврат ценности от обновлений (OEV/SVR). Момент обновления цены сам по себе стоит денег: на нём зарабатывают ликвидаторы. И Chainlink (SVR-фиды), и API3 (OEV Network) строят механику, чтобы часть этой прибыли возвращалась протоколу.

Что оракул решает и чего не решает

Решает:

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

Не решает:

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

Риски: как ломают оракулы

Атака на оракул — это не взлом криптографии. Обычно оракулу скармливают формально корректные данные, которые не соответствуют действительности, либо ломают то, что стоит вокруг него.

ДатаПротоколЧто произошлоПотери
18.02.2020bZxфлеш-займ на 7 500 ETH разогнал курс sUSD до $2 через фид Kyber, кредит выдали под завышенный залог$630–633 тыс.
11.10.2022Mango Marketsманипуляция собственными позициями по перпетуальному контракту MNGO раздула стоимость залога$110 млн по оценке CoinGecko Research / $117 млн по оценке Chainalysis
20.01.2026Makina Financeфлеш-займ на 280 млн USDC сдвинул расчётную цену в MachineShareOracle$5,0 млн, из них $4,14 млн перехватил MEV-строитель
11.07.2026Bonzo Lend (Hedera)верификатор оракула Supra принял вырожденную BLS-подпись как валидную, в блокчейн записали заведомо ложную цену SAUCE$9,05 млн
15.07.2026Ostium (Arbitrum)скомпрометирован зарегистрированный форвардер PriceUpKeep/Gelato, отчёты о ценах отправляли с датами из будущего$18 млн

Масштаб явления оценивала Chainalysis: по её методике за 2022 год протоколы DeFi потеряли на манипуляции оракулами $403,2 млн в 41 отдельной атаке. Это единственный публичный замер такого рода, независимого подтверждения цифры нет — читать её стоит как оценку одной компании, а не как отраслевую статистику.

Два инцидента 2026 года мы разбирали отдельно. В случае Bonzo Lend на Hedera заблокированная в протоколе стоимость обвалилась на 77% за сутки. У Ostium на Arbitrum торги пришлось приостановить.

И вот главное наблюдение по этой таблице. В 2020 и 2022 году ломали рынок: брали флеш-займ, двигали цену в тонком пуле, забирали кредит. В 2026 году трижды подряд ломали инфраструктуру доставки — ключи и права подписантов, автоматизацию обновлений, проверку подписи на приёмной стороне. Разница практическая: усреднение цены по времени работает против первого класса атак и совершенно бесполезно против второго. Поддельная подпись и отчёт с будущей меткой времени пройдут любой TWAP. Механику ценовых манипуляций, экономику атаки и математику TWAP мы разбираем в отдельном материале — атака на оракул и подделка цены актива; здесь достаточно понимать сам класс уязвимости.

Под всем этим лежит фундаментальное ограничение, у которого есть академическое имя — проблема оракула (blockchain oracle problem). В работе Caldarelli и Ellul (2021) она формулируется так: оракулы часто остаются централизованными доверенными посредниками, передающими данные по непроверяемым каналам, — и потому смарт-контракт не может быть надёжнее источника данных, на который опирается. Это не баг конкретного проекта и не то, что чинится следующим релизом: полностью «недоверительной» цепочка от реального мира до блокчейна пока не бывает.

При этом вывод «оракулы опасны, держитесь подальше» из таблицы не следует. Без них не работает ни один кредитный протокол, ни один перп-DEX, ни один обеспеченный стейблкоин — те самые десятки миллиардов TVS. Риск здесь не повод отказаться от инструмента, а повод смотреть, какой именно оракул стоит под протоколом, куда вы несёте деньги.

Как оценить оракул: чек-лист из семи вопросов

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

  1. Сколько независимых источников и как из них считается итог? Медиана по десяткам площадок и отсев выбросов — совсем не то же самое, что «цена с одной биржи».
  2. Кто именно подписывает данные и что теряет за враньё? Открытый список узлов и стейк под ним проверяемы; «данные предоставляет наш сервер» — нет.
  3. Push или pull, и подходит ли модель задаче? Кредитному протоколу с редкими ликвидациями хватит push-фида, торговой площадке с плечом нужна свежесть pull.
  4. Какие пороги у конкретного фида? Deviation и heartbeat публикуются в документации и на странице фида. Порог в 2% на волатильном активе означает, что контракт может видеть цену, отличающуюся от рынка на эти 2%.
  5. Что протокол делает при аномалии? Есть ли предохранитель на резкое отклонение, что происходит при нулевой цене, учитывается ли простой секвенсора L2. Ответ обычно есть в документации протокола, а не оракула.
  6. Кто ещё стоит в цепочке доставки? Релееры, keeper-боты, форвардеры автоматизации. Ostium и Bonzo Lend в 2026 году сломали именно этот слой, а не агрегацию.
  7. Насколько ликвиден сам актив? Для монеты с тонким рынком любой оракул уязвимее: манипулировать самим рынком дёшево, и корректный по всем правилам фид добросовестно передаст манипулированную цену.

FAQ

Оракул — это компания, программа или сеть?

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

Можно ли построить DeFi-протокол вообще без оракула?

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

Что будет, если оракул перестанет обновляться?

Контракт продолжит работать по последнему записанному значению, и это опаснее остановки. Рынок ушёл на 30% вниз, а фид застыл — залоги считаются по старой цене, ликвидации не срабатывают, протокол копит безнадёжный долг. Поэтому у зрелых протоколов есть проверка «возраста» последнего обновления и остановка операций при слишком старых данных.

Нужно ли держать токен оракула, чтобы пользоваться протоколом на нём?

Нет. Токены нужны внутри самой оракульной сети — для оплаты работы узлов, стейка и голосования; пользователь кредитного протокола с ними не взаимодействует. Для справки: на 1 августа 2026 LINK торгуется по $8,09, PYTH — по $0,0391451 (данные CoinGecko, сверенные с котировками Binance).

Chainlink — единственный серьёзный оракул?

Нет, но доминирующий. По рейтингу DeFiLlama на 1 августа 2026 Chainlink обслуживает 514 протоколов с $32,516 млрд обеспеченной стоимости, тогда как у ближайшего преследователя Chronicle — $7,378 млрд. При этом в отдельных нишах лидируют другие: у торговых площадок с плечом популярнее pull-модель, а данные, которых нет на биржах, закрывают оптимистичные оракулы.

Что такое оракул в крипте с точки зрения обычного пользователя?

Это невидимый компонент, от которого зависит цена вашего залога. Когда протокол показывает, что до ликвидации осталось 12%, он считает это по числу от оракула. Практический вывод отсюда один: прежде чем заводить деньги в протокол, полезно посмотреть, чей фид под ним стоит и какие у этого фида пороги обновления, — это открытая информация в документации.

BYBIT EARN
Крипта лежит?
Bybit Earn: процент капает каждый день
Открыть Earn
Поделиться
Связаться:
Крипто- и data-аналитик, инженер-программист (факультет компьютерных наук ХНУРЭ). В IT с 2008 года: администрировал корпоративный мониторинг в «Vodafone Украина», семь лет разрабатывал и продвигал веб-проекты, пять лет руководил маркетингом на метриках — конверсия, CTR, ROI, LTV.Криптовалютными рынками занимаюсь с 2021 года: ончейн-метрики, токеномика, макроэкономические индикаторы. Разработал собственную data-driven модель анализа рынка на 30+ метрик. Стек — Python (pandas, NumPy, SciPy, matplotlib), математическая статистика и EDA; сбор и сверку данных автоматизирую AI-агентами.Принцип — «Don't trust, verify»: каждая цифра проверена по первоисточнику, ключевые — минимум по двум независимым; прогнозы — только сценарии с условиями. Тезис без данных не публикуется.