Análise da prova de fraude Optimism e implementação da prova de fraude ZK

Prova de fraude e a implementação do ZK Fraud Proof

A prova de fraude é uma solução técnica amplamente aplicada no campo da blockchain, originada na comunidade Ethereum, e adotada por Layer2 como Arbitrum e Optimism. Após o surgimento do ecossistema Bitcoin em 2023, Robin Linus propôs a solução BitVM, cujo conceito central é a prova de fraude, oferecendo um novo modelo de segurança para a segunda camada ou pontes do Bitcoin.

O BitVM passou por várias evoluções de versão, desde o BitVM0, que usava circuitos lógicos como primitivos, até o BitVM2, que tem como núcleo a prova de fraude ZK e circuitos de verificação Groth16, com um caminho tecnológico em constante amadurecimento. Vários projetos, como Bitlayer, Citrea e BOB, foram implementados com base na tecnologia BitVM.

Este artigo tomará o esquema de prova de fraude do Optimism como exemplo, analisando a sua solução baseada na máquina virtual MIPS e na prova de fraude interativa, assim como a principal abordagem da prova de fraude ZK.

BitVM conhecimento de fundo: prova de fraude e abordagem de implementação da ZK Fraud Proof

OutputRoot e StateRoot

Optimism é um conhecido projeto de Optimistic Rollup, cuja arquitetura é composta por um sequenciador e contratos inteligentes na blockchain Ethereum. Após processar as transações, o sequenciador envia os dados para o Ethereum. Qualquer pessoa pode executar o cliente do nó Optimism, baixar os dados e executar transações localmente, calculando o hash do conjunto de estados atual.

Se o sequenciador carregar um hash de conjunto de estado incorreto, o resultado do cálculo local será diferente, e neste caso pode-se iniciar uma contestação. Optimism utiliza o campo OutputRoot para refletir a mudança de estado, calculado a partir de StateRoot e outros dois campos.

BitVM Background Knowledge: prova de fraude e a implementação do ZK Fraud Proof

Máquina Virtual MIPS e Árvore Merkle de Memória

Para verificar a correção do OutputRoot na cadeia, a equipe da Optimism implementou a máquina virtual MIPS em Solidity e projetou um sistema interativo de prova de fraude. Este sistema detalha o processo de tratamento de transações, observando qual opcode MIPS causou o erro.

As informações de estado da máquina virtual MIPS são organizadas em uma estrutura de árvore Merkle. Na prova de fraude interativa, é necessário determinar qual código de operação causou o erro no hash do estado e, em seguida, reproduzir o estado da máquina virtual na cadeia e executar esse código de operação.

BitVM background knowledge: prova de fraude e a implementação do ZK Fraud Proof

BitVM background knowledge: prova de fraude e a implementação do ZK Fraud Proof

Prova de Fraude Interativa

A Optimism desenvolveu o protocolo Fault Dispute Game(FDG), que inclui dois papéis: o desafiador e o defensor. Ambas as partes devem construir uma GameTree localmente e, através de várias interações, localizar os códigos de operação MIPS em disputa.

BitVM Background Knowledge: prova de fraude e a implementação do ZK Fraud Proof

Conhecimento de fundo sobre BitVM: prova de fraude e a implementação da ZK Fraud Proof

BitVM background knowledge: prova de fraude e a implementação do ZK Fraud Proof

BitVM Background Knowledge: prova de fraude e a implementação do ZK Fraud Proof

BitVM Background Knowledge: prova de fraude e a abordagem de implementação de ZK Fraud Proof

BitVM background knowledge: prova de fraude e a implementação do ZK Fraud Proof

Prova de fraude ZK

As provas de fraude tradicionais apresentam problemas como complexidade de interação, altos custos de gas e grande dificuldade de desenvolvimento. Para resolver isso, a Optimism propôs o conceito de Prova de Fraude ZK. O núcleo é que o desafiador especifica a transação a ser reproduzida, o sequenciador fornece a prova ZK, que é validada pelo contrato Ethereum.

Em comparação com a prova de fraude interativa, a Prova de Fraude ZK simplifica múltiplas interações em uma única geração e verificação de prova ZK, economizando tempo e custos. Em comparação com o ZK Rollup, gera prova apenas quando desafiada, reduzindo os custos computacionais.

Esta abordagem também foi adotada pelo BitVM2. O BitVM2 implementa a verificação ZK Proof através de scripts de Bitcoin e simplificou o programa em cadeia. Vários projetos, como Bitlayer, Goat Network, entre outros, já adotaram esta solução.

Conhecimento de fundo do BitVM: prova de fraude e a abordagem de implementação da ZK Fraud Proof

BitVM background knowledge: prova de fraude e a implementação do ZK Fraud Proof

BitVM Background Knowledge: prova de fraude e a implementação da ZK Fraud Proof

BitVM background knowledge: prova de fraude e a implementação de ZK Fraud Proof

OP3.83%
ZK2.56%
Ver original
Esta página pode conter conteúdo de terceiros, que é fornecido apenas para fins informativos (não para representações/garantias) e não deve ser considerada como um endosso de suas opiniões pela Gate nem como aconselhamento financeiro ou profissional. Consulte a Isenção de responsabilidade para obter detalhes.
  • Recompensa
  • 7
  • Compartilhar
Comentário
0/400
BugBountyHuntervip
· 07-22 23:54
Mais uma vez a tecnologia do carro da OP, tsk tsk.
Ver originalResponder0
GateUser-a180694bvip
· 07-22 23:36
O novo esquema Groth16 tem algo de interessante.
Ver originalResponder0
TestnetFreeloadervip
· 07-22 22:00
Em breve, vou conseguir tantas recompensas que as minhas mãos vão ficar cansadas.
Ver originalResponder0
GasWastingMaximalistvip
· 07-20 00:31
O mundo crypto está muito competitivo, um monte de gente fazendo provas.
Ver originalResponder0
LiquidatedTwicevip
· 07-20 00:29
prova de fraude brincou bem, então é só润
Ver originalResponder0
BridgeTrustFundvip
· 07-20 00:28
O que aconteceu com a prova de fraude do OP que foi interrompida pela metade?
Ver originalResponder0
CrossChainBreathervip
· 07-20 00:12
Dar tanto valor ao op assim.
Ver originalResponder0
Faça trade de criptomoedas em qualquer lugar e a qualquer hora
qrCode
Escaneie o código para baixar o app da Gate
Comunidade
Português (Brasil)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)