Prova de fraude e análise da implementação da ZK Fraud Proof
A prova de fraude é uma solução técnica amplamente utilizada no campo da blockchain, originada na comunidade Ethereum, adotada por Layer2 como Arbitrum e Optimism. Após o surgimento do ecossistema Bitcoin em 2023, Robin Linus propôs o esquema BitVM, com a prova de fraude como ideia central, oferecendo um novo modelo de segurança para a segunda camada do Bitcoin ou pontes.
O BitVM passou por várias versões teóricas, desde o BitVM0 inicial até o BitVM2 mais recente, e os caminhos tecnológicos relacionados estão a amadurecer continuamente. Vários projetos, como Bitlayer e Citrea, estão a ser implementados com base na tecnologia BitVM.
Este artigo tomará como exemplo o esquema de prova de fraude da Optimism, analisando sua solução baseada na máquina virtual MIPS e na prova de fraude interativa, bem como as principais ideias por trás da prova de fraude ZK.
OutputRoot e StateRoot
A infraestrutura do Optimism é composta por um sequenciador e contratos inteligentes na blockchain do Ethereum. Após processar as transações, o sequenciador envia os dados para o Ethereum. Qualquer pessoa pode executar um nó do Optimism, baixar esses dados e executá-los localmente, calculando o hash do conjunto de estados atual.
Se o sequenciador carregar um hash de conjunto de estados errado, os resultados de cálculo local terão diferenças, e neste caso, pode-se iniciar uma contestação através do sistema de prova de fraude.
Optimism utiliza o campo StateRoot para refletir as mudanças no conjunto de estados. O sequenciador irá regularmente enviar o OutputRoot para o Ethereum, e o OutputRoot é calculado a partir do StateRoot e de outros campos.
Máquina Virtual MIPS e Árvore de Merkle de Memória
Para verificar a correção do OutputRoot na cadeia, a equipe de desenvolvimento da Optimism escreveu a máquina virtual MIPS em Solidity, implementando parte das funcionalidades dos nós OP. No entanto, devido à limitação de Gas do Ethereum, não é possível executar completamente todas as transações no bloco OP na cadeia.
Para isso, a Optimism desenhou um sistema interativo de prova de fraude, detalhando o processo de processamento de transações em sequências de códigos de operação MIPS. O sistema determina se o OutputRoot é válido observando qual código de operação falha durante a execução.
As informações de estado da máquina virtual MIPS são organizadas em uma árvore de Merkle. Os contratos relacionados à prova de fraude executam uma única instrução MIPS na cadeia através da função Step, comparando se os resultados são consistentes.
Prova de fraude interativa
A Optimism desenvolveu o protocolo Fault Dispute Game(FDG), que inclui os papéis de desafiador e defensor. Ambas as partes devem construir uma GameTree localmente e, através de múltiplas interações, localizar os códigos de operação MIPS em disputa.
O GameTree é composto por duas camadas de árvores Merkle. O primeiro nível de nós folha é o OutputRoot de diferentes blocos, e o segundo nível de nós folha é o hash de estado da máquina virtual MIPS. Ambas as partes interagem múltiplas vezes na cadeia, até que se determine a operação MIPS única que deve ser executada na cadeia.
Prova de fraude ZK
A prova de fraude tradicional apresenta problemas como complexidade de interação, altos custos de gas e grande dificuldade de desenvolvimento. Para isso, a Optimism propôs o conceito de ZK Fraud Proof.
A ideia central é: o desafiador especifica a transação que precisa ser reproduzida, o sequenciador Rollup fornece a prova ZK dessa transação, que é verificada por um contrato inteligente Ethereum. Se a verificação for bem-sucedida, a transação é considerada processada corretamente.
Comparado à 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 de gás. Em comparação com ZK Rollup, gera prova apenas quando desafiada, reduzindo a sobrecarga computacional.
O BitVM2 também adota uma abordagem semelhante, implementando a verificação ZK Proof através de scripts Bitcoin, e conseguiu uma grande simplificação no tamanho do programa na blockchain.
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.
14 Curtidas
Recompensa
14
4
Compartilhar
Comentário
0/400
not_your_keys
· 16h atrás
De qualquer forma, não consigo entender. Vamos esperar por uma alpha posterior.
Ver originalResponder0
metaverse_hermit
· 16h atrás
确实值得 entrar numa posição Op
Ver originalResponder0
CommunityJanitor
· 16h atrás
Andam o dia todo a promover esta otimização e aquela otimização
Ver originalResponder0
NftDataDetective
· 16h atrás
parece que as provas de fraude finalmente estão a crescer... já era tempo, a meu ver
Evolução da tecnologia de prova de fraude: da interação à implementação da prova de fraude ZK
Prova de fraude e análise da implementação da ZK Fraud Proof
A prova de fraude é uma solução técnica amplamente utilizada no campo da blockchain, originada na comunidade Ethereum, adotada por Layer2 como Arbitrum e Optimism. Após o surgimento do ecossistema Bitcoin em 2023, Robin Linus propôs o esquema BitVM, com a prova de fraude como ideia central, oferecendo um novo modelo de segurança para a segunda camada do Bitcoin ou pontes.
O BitVM passou por várias versões teóricas, desde o BitVM0 inicial até o BitVM2 mais recente, e os caminhos tecnológicos relacionados estão a amadurecer continuamente. Vários projetos, como Bitlayer e Citrea, estão a ser implementados com base na tecnologia BitVM.
Este artigo tomará como exemplo o esquema de prova de fraude da Optimism, analisando sua solução baseada na máquina virtual MIPS e na prova de fraude interativa, bem como as principais ideias por trás da prova de fraude ZK.
OutputRoot e StateRoot
A infraestrutura do Optimism é composta por um sequenciador e contratos inteligentes na blockchain do Ethereum. Após processar as transações, o sequenciador envia os dados para o Ethereum. Qualquer pessoa pode executar um nó do Optimism, baixar esses dados e executá-los localmente, calculando o hash do conjunto de estados atual.
Se o sequenciador carregar um hash de conjunto de estados errado, os resultados de cálculo local terão diferenças, e neste caso, pode-se iniciar uma contestação através do sistema de prova de fraude.
Optimism utiliza o campo StateRoot para refletir as mudanças no conjunto de estados. O sequenciador irá regularmente enviar o OutputRoot para o Ethereum, e o OutputRoot é calculado a partir do StateRoot e de outros campos.
Máquina Virtual MIPS e Árvore de Merkle de Memória
Para verificar a correção do OutputRoot na cadeia, a equipe de desenvolvimento da Optimism escreveu a máquina virtual MIPS em Solidity, implementando parte das funcionalidades dos nós OP. No entanto, devido à limitação de Gas do Ethereum, não é possível executar completamente todas as transações no bloco OP na cadeia.
Para isso, a Optimism desenhou um sistema interativo de prova de fraude, detalhando o processo de processamento de transações em sequências de códigos de operação MIPS. O sistema determina se o OutputRoot é válido observando qual código de operação falha durante a execução.
As informações de estado da máquina virtual MIPS são organizadas em uma árvore de Merkle. Os contratos relacionados à prova de fraude executam uma única instrução MIPS na cadeia através da função Step, comparando se os resultados são consistentes.
Prova de fraude interativa
A Optimism desenvolveu o protocolo Fault Dispute Game(FDG), que inclui os papéis de desafiador e defensor. Ambas as partes devem construir uma GameTree localmente e, através de múltiplas interações, localizar os códigos de operação MIPS em disputa.
O GameTree é composto por duas camadas de árvores Merkle. O primeiro nível de nós folha é o OutputRoot de diferentes blocos, e o segundo nível de nós folha é o hash de estado da máquina virtual MIPS. Ambas as partes interagem múltiplas vezes na cadeia, até que se determine a operação MIPS única que deve ser executada na cadeia.
Prova de fraude ZK
A prova de fraude tradicional apresenta problemas como complexidade de interação, altos custos de gas e grande dificuldade de desenvolvimento. Para isso, a Optimism propôs o conceito de ZK Fraud Proof.
A ideia central é: o desafiador especifica a transação que precisa ser reproduzida, o sequenciador Rollup fornece a prova ZK dessa transação, que é verificada por um contrato inteligente Ethereum. Se a verificação for bem-sucedida, a transação é considerada processada corretamente.
Comparado à 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 de gás. Em comparação com ZK Rollup, gera prova apenas quando desafiada, reduzindo a sobrecarga computacional.
O BitVM2 também adota uma abordagem semelhante, implementando a verificação ZK Proof através de scripts Bitcoin, e conseguiu uma grande simplificação no tamanho do programa na blockchain.