Багато хто вважає, що дані оракула, отримані з ланцюга, є актуальними в реальному часі, але ця ідея може призвести до помилок.
Візьмемо, наприклад, децентралізовані оракули типу APRO — вони дозволяють будь-кому виступати в ролі валідатора даних, подаючи звіти в ланцюг за допомогою підпису та таймстампу. Звучить демократично, але є один важливий нюанс: дійсність цих звітів обмежена 24 годинами.
Інакше кажучи, якщо ваш смарт-контракт підтвердив звіт, це не означає, що дані є актуальними. Таймстамп може бути з вчорашнього дня або навіть позавчора. Підтвердження валідності і актуальність даних — це зовсім різні речі.
Як це використовувати? Смарт-контракти можуть мати чотири підходи:
Перший — режим реального часу — отримання, валідація та застосування найновішої ціни в одній транзакції. Це підходить для високочастотних трейдерів і сценаріїв, що вимагають миттєвого розрахунку, де час має критичне значення.
Другий — історичний запит — отримання ціни на конкретний таймстамп. Добре підходить для аудиту або розрахункових перевірок, гарантує цілісність даних.
Третій — розділення оновлення ціни та бізнес-логіки — обробляти їх окремо. Аналогічно push-режиму традиційних оракулів, більш гнучко і економно щодо Gas.
Четвертий — читання існуючих даних з ланцюга — найризикованіший підхід. Якщо ніхто не подає нових звітів, ви можете отримати ціну кілька місяців тому. Можна використовувати в окремих сценаріях, але потрібно бути дуже обережним.
Головне — ніколи не плутайте "валідовано" і "актуальні дані". Навіть якщо звіт APRO прострочений на 24 години, підпис все одно може бути валідним, але ваше застосування вже може базуватися на історичних даних.
Це відображає сутність децентралізованих оракулів — вони повертають право визначати актуальність даних саме застосункам. Вам потрібно обирати відповідну стратегію отримання даних відповідно до вашого бізнес-сценарію. Більша влада — більша відповідальність.
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
12 лайків
Нагородити
12
4
Репост
Поділіться
Прокоментувати
0/400
LiquidityNinja
· 12год тому
Ой, підтвердження пройдено ≠ дані свіжі, цей ямка дійсно потрібно пройти, щоб зрозуміти
Ще одна гарна брехня "децентралізованої демократії", за нею ховаються всілякі пастки
Тема 24-годинного терміну дії, скільки людей стежать за старими даними під час торгівлі?
Тільки для читання залишків — це найкраще, ціна кілька місяців тому, ти наважуєшся використовувати? Божевільно, правда?
Переглянути оригіналвідповісти на0
Fren_Not_Food
· 12год тому
Ой, знову ця пастка, підтвердження пройдено ≠ дані свіжі, скільки людей тут попалося
Дані за останні 24 години ще смієш використовувати, у мене немає такої сміливості
Тільки читаю старі дані з блокчейну — одразу Pass, ризик занадто великий
Переглянути оригіналвідповісти на0
Liquidated_Larry
· 12год тому
Знову зловили, підтвердження пройдено ≠ дані свіжі, скільки людей я бачу, що потрапляють у цю пастку
Переглянути оригіналвідповісти на0
StakeOrRegret
· 13год тому
Блін, підтвердження пройдено ≠ дані свіжі, тільки пройшовши цю яму, зрозумієш
Багато хто вважає, що дані оракула, отримані з ланцюга, є актуальними в реальному часі, але ця ідея може призвести до помилок.
Візьмемо, наприклад, децентралізовані оракули типу APRO — вони дозволяють будь-кому виступати в ролі валідатора даних, подаючи звіти в ланцюг за допомогою підпису та таймстампу. Звучить демократично, але є один важливий нюанс: дійсність цих звітів обмежена 24 годинами.
Інакше кажучи, якщо ваш смарт-контракт підтвердив звіт, це не означає, що дані є актуальними. Таймстамп може бути з вчорашнього дня або навіть позавчора. Підтвердження валідності і актуальність даних — це зовсім різні речі.
Як це використовувати? Смарт-контракти можуть мати чотири підходи:
Перший — режим реального часу — отримання, валідація та застосування найновішої ціни в одній транзакції. Це підходить для високочастотних трейдерів і сценаріїв, що вимагають миттєвого розрахунку, де час має критичне значення.
Другий — історичний запит — отримання ціни на конкретний таймстамп. Добре підходить для аудиту або розрахункових перевірок, гарантує цілісність даних.
Третій — розділення оновлення ціни та бізнес-логіки — обробляти їх окремо. Аналогічно push-режиму традиційних оракулів, більш гнучко і економно щодо Gas.
Четвертий — читання існуючих даних з ланцюга — найризикованіший підхід. Якщо ніхто не подає нових звітів, ви можете отримати ціну кілька місяців тому. Можна використовувати в окремих сценаріях, але потрібно бути дуже обережним.
Головне — ніколи не плутайте "валідовано" і "актуальні дані". Навіть якщо звіт APRO прострочений на 24 години, підпис все одно може бути валідним, але ваше застосування вже може базуватися на історичних даних.
Це відображає сутність децентралізованих оракулів — вони повертають право визначати актуальність даних саме застосункам. Вам потрібно обирати відповідну стратегію отримання даних відповідно до вашого бізнес-сценарію. Більша влада — більша відповідальність.