Оракулы
Оракулы — это сторонние сервисы, предоставляющие смарт-контрактам внешние данные, позволяя им взаимодействовать с реальным миром.
Оракулы выступают мостами между блокчейнами и внешними источниками данных. Смарт-контракты, работающие на блокчейнах, не могут напрямую получать доступ к информации вне цепочки, такой как ленты цен, данные о погоде или ответы API. Оракулы решают эту проблему, получая и проверяя внешние данные, а затем передавая их смарт-контрактам. Это позволяет смарт-контрактам выполняться на основе реальных событий и информации.
Существуют различные типы оракулов, включая программные оракулы (получающие данные из API), аппаратные оракулы (использующие датчики) и человеческие оракулы (основанные на человеческом вводе). Безопасность и надежность оракула имеют решающее значение, поскольку скомпрометированные оракулы могут привести к неверным данным и значительным финансовым потерям для пользователей смарт-контрактов.
🛡️ Trust Score
✅ Проверенные технические факты
- • Oracles provide smart contracts with access to external data.
- • Blockchains cannot natively fetch off-chain data due to their deterministic nature.
- • The 'Oracle Problem' refers to the trust and decentralization challenges of external data.
- • Decentralized Oracle Networks (DONs) use multiple sources to ensure reliability.
- • Push-based oracles update on-chain data at regular intervals.
- • Pull-based oracles update on-chain data only when requested by a transaction.
graph LR
Center["Оракулы"]:::main
Pre_smart_contract["smart-contract"]:::pre --> Center
click Pre_smart_contract "/terms/smart-contract"
Pre_blockchain["blockchain"]:::pre --> Center
click Pre_blockchain "/terms/blockchain"
Rel_decentralized_finance_defi["decentralized-finance-defi"]:::related -.-> Center
click Rel_decentralized_finance_defi "/terms/decentralized-finance-defi"
Rel_chainlink["chainlink"]:::related -.-> Center
click Rel_chainlink "/terms/chainlink"
Rel_inter_blockchain_communication_ibc["inter-blockchain-communication-ibc"]:::related -.-> Center
click Rel_inter_blockchain_communication_ibc "/terms/inter-blockchain-communication-ibc"
classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
linkStyle default stroke:#4b5563,stroke-width:2px;
🧒 Простыми словами
🔌 Представь робота-судью, который должен выплатить страховку, если пойдет дождь. Робот не знает, идет ли дождь, пока специальный человек (оракул) не принесет ему справку от метеослужбы.
🤓 Expert Deep Dive
Существует две модели: Push (оракул сам обновляет цену в сети раз в час) и Pull (пользователь сам 'забирает' свежую цену в момент транзакции). Модели Pull, как у Pyth Network, обеспечивают более высокую скорость и точность данных для трейдинга.