Оракул-машина система: Блокчейн та ключовий міст між реальним світом

robot
Генерація анотацій у процесі

Ключова роль системи оракулів у технології блокчейн

Оракул-машина є важливою інфраструктурою в області Блокчейн, яка може надавати зовнішню інформацію для смарт-контрактів на ланцюгу. Як проміжне програмне забезпечення, що з'єднує смарт-контракти та світ поза ланцюгом, оракул-машина відіграє незамінну роль в екосистемі Блокчейн, її основна функція полягає в наданні необхідних зовнішніх даних для смарт-контрактів.

Оракул-машина детальне пояснення серії Chainlink (частина 1)

Наприклад, якщо ми розгорнемо смарт-контракт на Ethereum, який потребує отримати дані про обсяги торгівлі нафтою за певну дату. Оскільки сам смарт-контракт не може безпосередньо отримувати дані з реального світу поза блокчейном, для реалізації цієї функції необхідно використовувати Оракул-машину. Конкретний процес виглядає так: смарт-контракт записує обсяги торгівлі нафтою за потрібну дату в журнал подій, після чого запускається процес, який моніторить цей журнал подій. Коли виявляється відповідний запит, цей процес викликає відповідний метод контракту, подаючи транзакцію на блокчейні, і передає інформацію про обсяги торгівлі нафтою за задану дату в смарт-контракт.

Оракул-машина детальне пояснення серії Chainlink (частина 1)

Серед численних проектів оракулів Chainlink займає найбільшу частку ринку. Chainlink — це децентралізована мережа оракулів, що має на меті надавати блокчейну дані з реального світу найбезпечнішим і надійним способом. Окрім реалізації основних функцій оракулів, Chainlink також побудував екосистему навколо токена LINK, що формує позитивний цикл через економічні стимули. У мережі Chainlink оракульні послуги потрібно активувати шляхом передачі токенів LINK, а LINK є токеном ERC677 на Ethereum. Функції оракулів, реалізовані на базі токена LINK, належать до моделі запит/відповідь.

! Chainlink Частина 1 серії Oracle Explainer](https://img-cdn.gateio.im/webp-social/moments-36eedcde4ebee55bf1c0e6c5f02934df.webp)

Стандарт ERC677 додає метод transferAndCall на базі ERC20, об'єднуючи платіж і запит на послугу в один, краще задовольняючи вимоги бізнес-сценаріїв Оракул-машини. Коли користувач викликає transferAndCall для переказу, окрім звичайного переказу ERC20, якщо отримувачем є адреса контракту, також буде викликано метод onTokenTransfer цієї адреси.

Оракул-машина деталі серії Chainlink (частина 1)

У процесі запиту oracle в ланцюзі, коли споживач оракула використовує метод transferAndCall для оплати зборів та запиту послуги, метод onTokenTransfer оракул-контракту спочатку виконує ряд перевірок безпеки, включаючи перевірку, чи є переказ токеном LINK, перевірку відповідності довжини запитуваних даних, перевірку селектора функцій тощо. Лише після цих перевірок буде викликано метод oracleRequest оракул-контракту через deleGatecall.

! Chainlink Частина 1 серії Oracle Explainer](https://img-cdn.gateio.im/webp-social/moments-dae23b36c6a83626aa95ba58fa8dbee5.webp)

метод oracleRequest генерує унікальний requestId, встановлює час закінчення запиту та записує відповідну інформацію в мапу commitments. Найважливіше, що він викликає подію OracleRequest, яка містить дані запиту. Дані в цій події зазвичай представлені у форматі CBOR( для зручності розбору та обробки вузлами поза ланцюгом.

! Chainlink (частина 1) із серії Oracle Explainer])https://img-cdn.gateio.im/webp-social/moments-1994fff156354700fda0609f9e317726.webp(

Вузли, що знаходяться поза блокчейном, під час відповіді на запит викликають метод fulfillOracleRequest. Цей метод спочатку проводить ряд перевірок, включаючи перевірку прав виклику, перевірку дійсності запиту тощо. Після успішної перевірки оновлюється кількість токенів, які можна отримати, видаляється відповідний запис про зобов'язання, і в кінцевому підсумку викликається функція зворотного виклику контракту запитувача.

![Оракул-машина детальний опис серії Chainlink (частина 1)])https://img-cdn.gateio.im/webp-social/moments-bb84d77f358852f47e9adf3e74ba5bf9.webp(

Для розробників, якщо потрібно використовувати наявні дані про ціни валютних пар, можна безпосередньо викликати інтерфейс Price Feed, наданий Chainlink. Кожна валютна пара має незалежний Price Feed ), також відомий як Aggregator (, насправді є контрактом AggregatorProxy. Ці інтерфейси надають можливості отримувати точність ціни, опис, номер версії, а також останні дані про ціни тощо. У більшості сценаріїв застосування контракт може лише зчитувати останню ціну, викликавши метод latestRoundData )(. Варто зазначити, що валютні пари, що оцінюються в доларах США, зазвичай використовують єдину точність 8 знаків, що спрощує обробку точності між різними токенами.

! Chainlink (частина 1) із серії Oracle Explainer])https://img-cdn.gateio.im/webp-social/moments-527bd8714534f5f06ccdd9afe40b253a.webp(

LINK-3.21%
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • 5
  • Поділіться
Прокоментувати
0/400
0xSherlockvip
· 07-18 14:15
link ще потрібно продовжувати розвивати
Переглянути оригіналвідповісти на0
LightningPacketLossvip
· 07-16 16:18
Чи може ціна link бути кращою?
Переглянути оригіналвідповісти на0
PumpingCroissantvip
· 07-16 03:42
link трохи витрачає газ
Переглянути оригіналвідповісти на0
GweiWatchervip
· 07-16 03:30
яка зв'язок між link і цим стрибком цін?
Переглянути оригіналвідповісти на0
WhaleSurfervip
· 07-16 03:24
LINK бик а, безкоштовна ціна ще й можна заробити
Переглянути оригіналвідповісти на0
  • Закріпити