Os oito principais pontos de segurança na aplicação de ZKP em Blockchain

zk-SNARKs e os desafios de segurança da fusão com Blockchain

zk-SNARKs(ZKP) como uma técnica criptográfica avançada, está sendo amplamente aplicada no campo do Blockchain. Com cada vez mais protocolos Layer 2 e blockchains públicos especiais escolhendo construir com base em zk-SNARKs, sua complexidade também trouxe novos desafios de segurança. Este artigo abordará, a partir de uma perspectiva de segurança, os potenciais riscos que podem surgir no processo de combinação entre zk-SNARKs e Blockchain.

Características Principais do ZKP

Um sistema de zk-SNARKs eficaz precisa satisfazer simultaneamente três características-chave:

  1. Completude: para declarações verdadeiras, o provador pode sempre demonstrar com sucesso a sua correção ao verificador.

  2. Confiabilidade: para declarações erradas, o provador malicioso não pode enganar o verificador.

  3. Propriedade de conhecimento zero: durante o processo de verificação, o verificador não obterá nenhuma informação do provador sobre os dados em si.

Estas três características determinam se o sistema de zk-SNARKs é seguro e eficaz, e devem ser focadas na avaliação de segurança.

Áreas de foco para a segurança

Para projetos de blockchain baseados em zk-SNARKs, é necessário prestar atenção a algumas questões de segurança a seguir:

1. zk-SNARKs circuito

O design e a implementação do circuito ZKP estão diretamente relacionados à segurança de todo o sistema. Os principais pontos de atenção incluem:

  • Erro de design de circuito: pode levar a que o processo de prova não cumpra atributos de segurança como a zero conhecimento, completude ou confiabilidade.

  • Erro na implementação de primitivas criptográficas: se houver problemas na implementação de componentes criptográficos básicos, como funções de hash e algoritmos de criptografia, isso pode comprometer a segurança de todo o sistema.

  • Falta de aleatoriedade: se houver falhas no processo de geração de números aleatórios, isso pode comprometer a segurança da prova.

2. Segurança de contratos inteligentes

Para projetos de moedas privadas em Layer 2 ou implementados através de contratos inteligentes, a segurança dos contratos é especialmente importante. Além das vulnerabilidades comuns como reentrância e injeção, as falhas na validação de mensagens cross-chain e na validação de proof podem levar diretamente à falha de confiabilidade.

3. Disponibilidade de dados

É necessário garantir que os dados off-chain possam ser acessados e verificados de forma segura e eficaz quando necessário. Preste atenção à segurança em aspectos como armazenamento de dados, mecanismos de verificação e processos de transmissão.

4. Mecanismo de incentivos econômicos

Avaliar se o mecanismo de incentivos no projeto é razoável, se pode efetivamente estimular a participação de todas as partes e manter a segurança e a estabilidade do sistema.

5. Proteção de Privacidade

Para projetos que envolvem proteção de privacidade, é necessário auditar a implementação de seu esquema de privacidade, garantindo que os dados dos usuários estejam adequadamente protegidos durante a transmissão, armazenamento e verificação.

6. Otimização de desempenho

Avaliar as estratégias de otimização de desempenho do projeto, como velocidade de processamento de transações, eficiência do processo de validação, etc., garantindo que atende às necessidades de desempenho sem comprometer a segurança.

7. Mecanismos de tolerância a falhas e recuperação

Estratégias de tolerância a falhas e recuperação de projetos de auditoria diante de situações inesperadas, como falhas de rede e ataques maliciosos.

8. Qualidade do código

A qualidade geral do código do projeto de auditoria, com foco na legibilidade, manutenibilidade e robustez, avaliando se existem erros potenciais.

A importância dos serviços de segurança

Os serviços de segurança para projetos de ZKP precisam de proteção abrangente. Além da auditoria de código de contratos inteligentes, é necessária a auditoria da lógica de codificação do circuito, utilizando métodos manuais e automatizados para auditar a correção das condições de restrição e da geração de testemunhos. Para lógicas importantes, é possível simular múltiplos comportamentos de ataque através da montagem manual de testemunhos lógicos personalizados para testes.

Ao mesmo tempo, é importante realizar testes de Fuzz e de segurança no código Sequencer/Prover e nos contratos de verificação. Após o lançamento do projeto, um sistema de monitorização e proteção em tempo real pode fornecer garantias de segurança contínuas.

Conclusão

A aplicação de ZKP no campo da Blockchain tem um amplo potencial, mas sua complexidade também trouxe novos desafios de segurança. Ao avaliar a segurança dos projetos ZKP, é necessário determinar o foco com base em cenários de aplicação específicos (, como Layer 2, moedas de privacidade, blockchains públicas, etc. De qualquer forma, garantir a completude, confiabilidade e a natureza de zero conhecimento do ZKP é o núcleo da avaliação de segurança. Somente considerando de forma abrangente todos os fatores de segurança é que se pode construir um sistema ZKP de Blockchain verdadeiramente seguro e confiável.

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
  • Repostar
  • Compartilhar
Comentário
0/400
AirdropNinjavip
· 08-13 20:06
zk tem realmente tantas armadilhas
Ver originalResponder0
LiquiditySurfervip
· 08-13 17:50
layer2 já me está a matar
Ver originalResponder0
OneBlockAtATimevip
· 08-13 17:50
Conhecimento zero é uma necessidade, o resto é conversa fiada.
Ver originalResponder0
VirtualRichDreamvip
· 08-13 17:49
Quem pode me explicar como funciona zk-SNARKs?
Ver originalResponder0
PhantomMinervip
· 08-13 17:47
Este código é muito pesado!
Ver originalResponder0
StableGeniusDegenvip
· 08-13 17:41
Tudo depende do zkp para L2. Sem isso, não há futuro.
Ver originalResponder0
down_only_larryvip
· 08-13 17:41
Ainda a falar sobre zkps, primeiro vamos resolver o tps e os custos antes de continuar.
Ver originalResponder0
  • Marcar
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)