Доказ шахрайства та ZK Fraud Proof: принципи реалізації сучасних технологій безпеки Блокчейн
доказ шахрайства є широко використовуваним технічним рішенням у сфері Блокчейн, вперше виникнувши в спільноті Ethereum, був прийнятий такими відомими Layer2 Ethereum, як Arbitrum і Optimism. Після виникнення екосистеми Bitcoin у 2023 році, Робін Лінус запропонував рішення BitVM, яке базується на ідеї доказу шахрайства, на основі існуючих технологій Bitcoin, таких як Taproot, щоб забезпечити нову модель безпеки для другого рівня Bitcoin або мостів.
BitVM пройшов через еволюцію кількох теоретичних версій, від ранньої BitVM0 до пізнішої BitVM2, пов'язані технологічні реалізації постійно вдосконалюються, що привертає широку увагу в індустрії. Кілька проектів, таких як Bitlayer, Citrea, BOB та інші, реалізували різні версії на основі технології BitVM.
Ця стаття буде використовувати схему доказу шахрайства Optimism як приклад, аналізуючи її на основі віртуальної машини MIPS та інтерактивного доказу шахрайства, а також основні ідеї ZK-доказу шахрайства.
OutputRoot і StateRoot
Optimism є відомим проектом Optimistic Rollup, інфраструктура якого складається з упорядковувача та смарт-контрактів на блокчейні Ethereum. Після обробки даних транзакцій упорядковувач відправляє ці дані на Ethereum. Користувачі, які запускають клієнт вузла Optimism, можуть завантажити ці дані, виконати транзакції локально та обчислити хеш поточного набору стану.
Якщо послідовник завантажив неправильний хеш стану, локальні результати будуть відрізнятися від нього, в цей момент можна ініціювати оскарження через систему доказу шахрайства. Блокчейни на базі EVM зазвичай використовують структуру даних Merkle Tree для запису стану, що називається World State Trie. Після виконання транзакції World State Trie змінюється, і його остаточний хеш також оновлюється. Ethereum називає цей хеш StateRoot, який використовується для відображення змін у стані.
Система облікових записів Optimism подібна до Ethereum, також використовує поле StateRoot для відображення змін у наборі станів. Секвенсер регулярно завантажує OutputRoot до Ethereum, OutputRoot розраховується за допомогою StateRoot та ще двох полів.
MIPS віртуальна машина та пам'ять Merkle Tree
Щоб верифікувати правильність OutputRoot в блокчейні, найпростішим способом є реалізація OP-нод клієнта на Ethereum, але це стикається з двома проблемами:
Смарт-контракт не може автоматично отримати вхідні параметри, необхідні для доказу шахрайства.
Обмеження Gas в Ethereum не підтримує складні обчислювальні завдання
Перше питання можна вирішити за допомогою розгортання контракту PreimageOracle. Щодо другого питання, команда OP написала в Solidity віртуальну машину MIPS, яка реалізує частину функцій клієнта вузлів.
Оскільки неможливо повністю виконати всі транзакції в Блокчейні, OP розробив інтерактивну систему доказу шахрайства, яка деталізує процес обробки транзакцій у впорядковану обробку MIPS-операційних кодів. Після виконання кожного операційного коду стан віртуальної машини hash змінюється, ці записи узагальнюються в дерево Меркла.
У процесі перевірки доказу шахрайства необхідно визначити, який код операції MIPS спричинив проблему з хешем стану віртуальної машини, а потім відтворити стан на ланцюгу, виконати код операції та порівняти результати. Це вимагає завантаження частини інформації про стан віртуальної машини MIPS на ланцюг.
Інтерактивне доказ шахрайства
Команда OP розробила протокол Fault Dispute Game(FDG), що включає два ролі: викликач і захисник. Учасники повинні локально побудувати GameTree, що складається з двох шарів дерева Меркла. Листові вузли першого шару дерева є OutputRoot різних Блоків, а листи другого шару є хешами стану віртуальної машини MIPS.
Обидві сторони неодноразово взаємодіяли в Блокчейн, врешті-решт ідентифікувавши спірний MIPS код операції. Основний механізм інтерактивного доказу шахрайства включає:
FDG позиціювання потребує виконання MIPS операційного коду та інформації про стан VM на Блокчейні
Виконати цю операцію в MIPS віртуальній машині на Блокчейн Ефірі, отримавши остаточний результат
ZK-верифікація доказу шахрайства
Традиційний процес доказу шахрайства є складним і має такі проблеми:
Багаторазові взаємодії генерують великі витрати газу
Процес взаємодії триває довго, під час якого Rollup не може нормально виконувати транзакції.
Висока складність розробки інструкцій повторення певного VM в Блокчейн
Щоб вирішити ці проблеми, Optimism запропонував концепцію ZK Fraud Proof. Основна суть полягає в тому, що коли виникає виклик, Rollup-секретар надає ZK-докази оспорюваної транзакції, які перевіряються смарт-контрактом Ethereum. Якщо перевірка проходить успішно, це свідчить про те, що транзакція оброблена правильно.
В порівнянні з інтерактивним доказом шахрайства, ZK Fraud Proof спрощує багатократну взаємодію до одного раунду генерування та верифікації ZK-доказу, економлячи час і кошти. На відміну від ZK Rollup, OP Rollup, що базується на ZK Fraud Proof, генерує ZK-доказ лише під час оскарження, знижуючи обчислювальні витрати.
Цю ідею також використовує BitVM2. Проекти, які використовують BitVM2, такі як Bitlayer і Goat Network, реалізують програми перевірки ZK Proof за допомогою скриптів Bitcoin, суттєво скорочуючи масштаб програм, які потрібно розміщувати в блокчейні.
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
доказ шахрайства та ZK Fraud Proof: аналіз принципів реалізації сучасних технологій безпеки Блокчейн
Доказ шахрайства та ZK Fraud Proof: принципи реалізації сучасних технологій безпеки Блокчейн
доказ шахрайства є широко використовуваним технічним рішенням у сфері Блокчейн, вперше виникнувши в спільноті Ethereum, був прийнятий такими відомими Layer2 Ethereum, як Arbitrum і Optimism. Після виникнення екосистеми Bitcoin у 2023 році, Робін Лінус запропонував рішення BitVM, яке базується на ідеї доказу шахрайства, на основі існуючих технологій Bitcoin, таких як Taproot, щоб забезпечити нову модель безпеки для другого рівня Bitcoin або мостів.
BitVM пройшов через еволюцію кількох теоретичних версій, від ранньої BitVM0 до пізнішої BitVM2, пов'язані технологічні реалізації постійно вдосконалюються, що привертає широку увагу в індустрії. Кілька проектів, таких як Bitlayer, Citrea, BOB та інші, реалізували різні версії на основі технології BitVM.
Ця стаття буде використовувати схему доказу шахрайства Optimism як приклад, аналізуючи її на основі віртуальної машини MIPS та інтерактивного доказу шахрайства, а також основні ідеї ZK-доказу шахрайства.
OutputRoot і StateRoot
Optimism є відомим проектом Optimistic Rollup, інфраструктура якого складається з упорядковувача та смарт-контрактів на блокчейні Ethereum. Після обробки даних транзакцій упорядковувач відправляє ці дані на Ethereum. Користувачі, які запускають клієнт вузла Optimism, можуть завантажити ці дані, виконати транзакції локально та обчислити хеш поточного набору стану.
Якщо послідовник завантажив неправильний хеш стану, локальні результати будуть відрізнятися від нього, в цей момент можна ініціювати оскарження через систему доказу шахрайства. Блокчейни на базі EVM зазвичай використовують структуру даних Merkle Tree для запису стану, що називається World State Trie. Після виконання транзакції World State Trie змінюється, і його остаточний хеш також оновлюється. Ethereum називає цей хеш StateRoot, який використовується для відображення змін у стані.
Система облікових записів Optimism подібна до Ethereum, також використовує поле StateRoot для відображення змін у наборі станів. Секвенсер регулярно завантажує OutputRoot до Ethereum, OutputRoot розраховується за допомогою StateRoot та ще двох полів.
MIPS віртуальна машина та пам'ять Merkle Tree
Щоб верифікувати правильність OutputRoot в блокчейні, найпростішим способом є реалізація OP-нод клієнта на Ethereum, але це стикається з двома проблемами:
Перше питання можна вирішити за допомогою розгортання контракту PreimageOracle. Щодо другого питання, команда OP написала в Solidity віртуальну машину MIPS, яка реалізує частину функцій клієнта вузлів.
Оскільки неможливо повністю виконати всі транзакції в Блокчейні, OP розробив інтерактивну систему доказу шахрайства, яка деталізує процес обробки транзакцій у впорядковану обробку MIPS-операційних кодів. Після виконання кожного операційного коду стан віртуальної машини hash змінюється, ці записи узагальнюються в дерево Меркла.
У процесі перевірки доказу шахрайства необхідно визначити, який код операції MIPS спричинив проблему з хешем стану віртуальної машини, а потім відтворити стан на ланцюгу, виконати код операції та порівняти результати. Це вимагає завантаження частини інформації про стан віртуальної машини MIPS на ланцюг.
Інтерактивне доказ шахрайства
Команда OP розробила протокол Fault Dispute Game(FDG), що включає два ролі: викликач і захисник. Учасники повинні локально побудувати GameTree, що складається з двох шарів дерева Меркла. Листові вузли першого шару дерева є OutputRoot різних Блоків, а листи другого шару є хешами стану віртуальної машини MIPS.
Обидві сторони неодноразово взаємодіяли в Блокчейн, врешті-решт ідентифікувавши спірний MIPS код операції. Основний механізм інтерактивного доказу шахрайства включає:
ZK-верифікація доказу шахрайства
Традиційний процес доказу шахрайства є складним і має такі проблеми:
Щоб вирішити ці проблеми, Optimism запропонував концепцію ZK Fraud Proof. Основна суть полягає в тому, що коли виникає виклик, Rollup-секретар надає ZK-докази оспорюваної транзакції, які перевіряються смарт-контрактом Ethereum. Якщо перевірка проходить успішно, це свідчить про те, що транзакція оброблена правильно.
В порівнянні з інтерактивним доказом шахрайства, ZK Fraud Proof спрощує багатократну взаємодію до одного раунду генерування та верифікації ZK-доказу, економлячи час і кошти. На відміну від ZK Rollup, OP Rollup, що базується на ZK Fraud Proof, генерує ZK-доказ лише під час оскарження, знижуючи обчислювальні витрати.
Цю ідею також використовує BitVM2. Проекти, які використовують BitVM2, такі як Bitlayer і Goat Network, реалізують програми перевірки ZK Proof за допомогою скриптів Bitcoin, суттєво скорочуючи масштаб програм, які потрібно розміщувати в блокчейні.