Доказательство мошенничества и 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, его инфраструктура состоит из упорядочивателя и смарт-контрактов на блокчейне Эфириума. После обработки транзакционных данных упорядочивателем эти данные отправляются на Эфириум. Пользователи, запускающие клиент узла Optimism, могут загрузить эти данные, выполнить транзакции локально и вычислить хэш текущего состояния.
Если последователь загружает неверный хэш набора состояний, локальный расчет будет отличаться от него, в этом случае можно инициировать сомнение через систему доказательства мошенничества. Блокчейны на основе EVM обычно используют структуру данных Merkle Tree для записи наборов состояний, называемую World State Trie. После выполнения транзакции World State Trie изменяется, и его конечный хэш также обновляется. Эфириум называет этот хэш StateRoot, который используется для обозначения изменений в наборе состояний.
Система учетных записей Optimism аналогична Ethereum и также использует поле StateRoot для отражения изменений в наборе состояний. Секретарь будет регулярно загружать OutputRoot в Ethereum, который вычисляется на основе StateRoot и двух других полей.
Для проверки правильности OutputRoot в блокчейне самым простым способом является реализация клиента узла OP на Ethereum, однако это сталкивается с двумя проблемами:
Умные контракты не могут автоматически получить входные параметры, необходимые для доказательства мошенничества.
Ограничение Gas в Ethereum не поддерживает сложные вычислительные задачи
Первую проблему можно решить, развернув контракт PreimageOracle. Что касается второй проблемы, команда OP написала виртуальную машину MIPS на Solidity, реализовав часть функционала клиентской части узла.
Из-за невозможности полностью выполнять все транзакции в блокчейне, OP разработал интерактивную систему доказательства мошеничества, которая детализирует процесс обработки транзакций в упорядоченное выполнение кодов операций MIPS. После выполнения каждого кода операции состояние виртуальной машины будет изменяться, эти записи обобщаются в одно дерево Меркла.
В процессе доказательства мошенничества необходимо определить, какой код операции MIPS вызвал проблемы с хешем состояния виртуальной машины, затем воспроизвести то состояние на блокчейне, выполнить код операции и сравнить результаты. Это требует загрузки части информации о состоянии виртуальной машины MIPS на блокчейн.
Интерактивное доказательство мошенничества
Команда OP разработала протокол Fault Dispute Game(FDG), который включает в себя два角色: вызывающего и защитника. Участникам необходимо локально построить GameTree, состоящий из двух уровней дерева Меркла. Листовые узлы первого уровня дерева представляют собой OutputRoot разных Блоков, а листья второго уровня дерева являются хэшами состояния виртуальной машины MIPS.
Стороны несколько раз взаимодействовали в Блокчейне, в конечном итоге определив спорный код операции MIPS. Основной механизм интерактивного доказательства мошенничества включает в себя:
Для FDG необходимо выполнить код операции MIPS и информацию о состоянии VM, которые должны быть записаны в Блокчейн.
Выполнить этот код операции в виртуальной машине MIPS на блокчейне Ethereum, чтобы получить окончательный результат.
ZK-доказательство мошенничества
Сложность взаимодействия традиционного доказательства мошенничества вызывает следующие проблемы:
Многоразовые взаимодействия создают большие затраты на газ
Процесс взаимодействия длительный, в течение которого Rollup не может нормально выполнять транзакции.
Разработка реализации определенных команд повторного воспроизведения VM на блокчейне имеет высокую сложность
Чтобы решить эти проблемы, Optimism предложил концепцию ZK доказательства мошенничества. Основная идея заключается в том, что когда возникает вызов, последователь Rollup предоставляет ZK доказательство оспариваемой транзакции, которое проверяется смарт-контрактом Ethereum. Если проверка проходит, это означает, что транзакция обработана корректно.
По сравнению с интерактивным доказательством мошенничества, ZK Fraud Proof упрощает многократные взаимодействия в одно поколение и проверку ZK-доказательства, экономя время и средства. В отличие от ZK Rollup, OP Rollup на основе ZK Fraud Proof генерирует ZK-доказательство только в случае вызова, снижая вычислительные затраты.
Эта идея также была принята BitVM2. Проекты, использующие BitVM2, такие как Bitlayer и Goat Network, реализуют программу проверки ZK Proof с помощью биткойн-скриптов и значительно сокращают объем программ, которые необходимо записывать в блокчейн.
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании 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, его инфраструктура состоит из упорядочивателя и смарт-контрактов на блокчейне Эфириума. После обработки транзакционных данных упорядочивателем эти данные отправляются на Эфириум. Пользователи, запускающие клиент узла Optimism, могут загрузить эти данные, выполнить транзакции локально и вычислить хэш текущего состояния.
Если последователь загружает неверный хэш набора состояний, локальный расчет будет отличаться от него, в этом случае можно инициировать сомнение через систему доказательства мошенничества. Блокчейны на основе EVM обычно используют структуру данных Merkle Tree для записи наборов состояний, называемую World State Trie. После выполнения транзакции World State Trie изменяется, и его конечный хэш также обновляется. Эфириум называет этот хэш StateRoot, который используется для обозначения изменений в наборе состояний.
Система учетных записей Optimism аналогична Ethereum и также использует поле StateRoot для отражения изменений в наборе состояний. Секретарь будет регулярно загружать OutputRoot в Ethereum, который вычисляется на основе StateRoot и двух других полей.
! Предыстория BitVM: Реализация защиты от мошенничества и защиты от мошенничества ZK
MIPS виртуальная машина и память Merkle Tree
Для проверки правильности OutputRoot в блокчейне самым простым способом является реализация клиента узла OP на Ethereum, однако это сталкивается с двумя проблемами:
Первую проблему можно решить, развернув контракт PreimageOracle. Что касается второй проблемы, команда OP написала виртуальную машину MIPS на Solidity, реализовав часть функционала клиентской части узла.
Из-за невозможности полностью выполнять все транзакции в блокчейне, OP разработал интерактивную систему доказательства мошеничества, которая детализирует процесс обработки транзакций в упорядоченное выполнение кодов операций MIPS. После выполнения каждого кода операции состояние виртуальной машины будет изменяться, эти записи обобщаются в одно дерево Меркла.
В процессе доказательства мошенничества необходимо определить, какой код операции MIPS вызвал проблемы с хешем состояния виртуальной машины, затем воспроизвести то состояние на блокчейне, выполнить код операции и сравнить результаты. Это требует загрузки части информации о состоянии виртуальной машины MIPS на блокчейн.
Интерактивное доказательство мошенничества
Команда OP разработала протокол Fault Dispute Game(FDG), который включает в себя два角色: вызывающего и защитника. Участникам необходимо локально построить GameTree, состоящий из двух уровней дерева Меркла. Листовые узлы первого уровня дерева представляют собой OutputRoot разных Блоков, а листья второго уровня дерева являются хэшами состояния виртуальной машины MIPS.
Стороны несколько раз взаимодействовали в Блокчейне, в конечном итоге определив спорный код операции MIPS. Основной механизм интерактивного доказательства мошенничества включает в себя:
ZK-доказательство мошенничества
Сложность взаимодействия традиционного доказательства мошенничества вызывает следующие проблемы:
Чтобы решить эти проблемы, Optimism предложил концепцию ZK доказательства мошенничества. Основная идея заключается в том, что когда возникает вызов, последователь Rollup предоставляет ZK доказательство оспариваемой транзакции, которое проверяется смарт-контрактом Ethereum. Если проверка проходит, это означает, что транзакция обработана корректно.
По сравнению с интерактивным доказательством мошенничества, ZK Fraud Proof упрощает многократные взаимодействия в одно поколение и проверку ZK-доказательства, экономя время и средства. В отличие от ZK Rollup, OP Rollup на основе ZK Fraud Proof генерирует ZK-доказательство только в случае вызова, снижая вычислительные затраты.
Эта идея также была принята BitVM2. Проекты, использующие BitVM2, такие как Bitlayer и Goat Network, реализуют программу проверки ZK Proof с помощью биткойн-скриптов и значительно сокращают объем программ, которые необходимо записывать в блокчейн.