Considerações de segurança do projeto Blockchain ZKP: avaliação abrangente em 7 direções

robot
Geração de resumo em curso

Considerações de segurança na combinação de zk-SNARKs e Blockchain

zk-SNARKs(ZKP) como uma tecnologia criptográfica avançada, está sendo adotada por um número crescente de projetos de Blockchain. Com soluções Layer 2 como zkSync e Scroll, bem como blockchains especiais como Filecoin e Aleo sendo construídas com base em ZKP, juntamente com a prática de vários projetos de moedas anônimas anteriores, a fusão de ZKP com Blockchain está se aprofundando. No entanto, devido à complexidade do sistema, esse processo também pode trazer novos riscos de segurança. Este artigo irá explorar, a partir da perspectiva de segurança, as vulnerabilidades que podem surgir no processo de combinação de ZKP com Blockchain, oferecendo referências para a proteção de segurança de projetos relacionados.

As características centrais do ZKP

Antes de analisar a segurança do sistema ZKP, precisamos primeiro entender suas características principais. Um sistema de prova de conhecimento zero qualificado deve atender simultaneamente a três propriedades-chave: completude, solidez e zero conhecimento.

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

  2. Confiabilidade: um provador malicioso não consegue enganar o verificador em relação a declarações falsas.

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

Se o sistema não satisfizer a completude, pode, em algumas situações extremas, não ser possível obter provas corretas, resultando em negação de serviço. Se a confiabilidade não for garantida, um atacante pode enganar o validador por meio da falsificação de provas ou da construção de estruturas especiais, causando sérios problemas de bypass de permissões. E se a zero-knowledge for insuficiente, pode haver a divulgação de parâmetros originais durante o processo interativo, permitindo que o atacante construa provas de ataque ou leve o provador a agir de forma maliciosa.

Assim, garantir a integridade dessas três características é a chave para a segurança e eficácia do sistema ZKP.

ZKP na Blockchain - Foco na Segurança

Para projetos de Blockchain que utilizam tecnologia ZKP, é importante prestar atenção às seguintes direções de segurança:

1. zk-SNARKs circuito

Os circuitos ZKP utilizados no projeto precisam atender aos requisitos de segurança, eficácia e escalabilidade. Os principais pontos de foco incluem:

  • Design de circuitos: podem existir erros lógicos que fazem com que o processo de prova não cumpra as propriedades de segurança, como a zero-knowledge, integridade ou confiabilidade.
  • Implementação de primitivos criptográficos: como funções de hash, algoritmos de criptografia, etc., uma implementação incorreta pode comprometer a segurança de todo o sistema de prova.
  • Garantia de aleatoriedade: Se houver problemas 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 é crucial. Além das vulnerabilidades comuns como reentrada, injeção, estouro e contorno de permissões, os contratos inteligentes dos projetos ZKP desempenham um papel fundamental na transferência de ativos entre cadeias e na verificação de provas. Vulnerabilidades na validação de mensagens entre cadeias e na verificação de provas podem levar diretamente à falha da confiabilidade do sistema.

3. Disponibilidade de dados

O projeto precisa resolver adequadamente o problema da disponibilidade de dados, garantindo que os dados fora da cadeia possam ser acessados e verificados de forma segura e eficaz quando necessário. Prestar atenção à segurança em aspectos como armazenamento de dados, mecanismos de verificação e processo de transmissão. Além de usar provas de disponibilidade de dados, também é possível reforçar a proteção do host e o monitoramento do estado dos dados.

4. Mecanismo de incentivos econômicos

Avaliar o mecanismo de incentivos do projeto, garantindo que consiga estimular efetivamente a participação razoável de validadores, usuários e outras partes envolvidas, mantendo a segurança e a estabilidade do sistema. Focar nos aspectos do design do modelo de incentivos, distribuição de recompensas e mecanismos de penalização.

5. Proteção da privacidade

Para projetos que envolvem proteção de privacidade, é necessário auditar cuidadosamente a implementação de suas soluções de privacidade. Garantir que os dados dos usuários sejam adequadamente protegidos durante os processos de transmissão, armazenamento e verificação, ao mesmo tempo que se mantém a usabilidade e a confiabilidade do sistema. É possível inferir a existência de riscos de vazamento de privacidade do provador analisando o fluxo de comunicação do protocolo.

6. Otimização de desempenho

Avaliar as estratégias de otimização de desempenho do projeto, como a velocidade de processamento de transações, a eficiência do processo de validação, entre outros. Auditar as medidas de otimização implementadas no código, garantindo que o projeto atenda às necessidades de desempenho.

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

Estratégias de tolerância a falhas e recuperação para projetos de auditoria em face de situações inesperadas (como falhas de rede, ataques maliciosos, etc.). Garantir que o sistema possa se recuperar automaticamente e manter a operação normal sempre que possível.

8. Qualidade do código

Avaliar a qualidade geral do código do projeto de auditoria, focando na legibilidade, manutenibilidade e robustez do código. Avaliar se existem práticas de programação não conformes, código redundante ou potenciais erros.

Conclusão

Ao avaliar a segurança de projetos de ZKP, é primeiro necessário esclarecer onde o projeto aplica o ZKP, pois os focos de segurança variam de acordo com o tipo de projeto (como Layer 2, moedas de privacidade, blockchains públicas). Mas, de qualquer forma, garantir a eficácia das três características essenciais do ZKP — completude, confiabilidade e a validade do conhecimento zero — deve ser sempre a prioridade. Somente com uma compreensão completa dessas considerações de segurança é que se pode proporcionar uma garantia de segurança abrangente e eficaz para a combinação de ZKP com Blockchain.

Ver original
Esta página pode conter conteúdos de terceiros, que são fornecidos apenas para fins informativos (sem representações/garantias) e não devem ser considerados como uma aprovação dos seus pontos de vista pela Gate, nem como aconselhamento financeiro ou profissional. Consulte a Declaração de exoneração de responsabilidade para obter mais informações.
  • Recompensa
  • 4
  • Partilhar
Comentar
0/400
LiquiditySurfervip
· 5h atrás
L2 não é só isso, por que complicar tanto?
Ver originalResponder0
alpha_leakervip
· 5h atrás
Os riscos de segurança deveriam ter sido identificados há muito tempo, mas ninguém disse nada.
Ver originalResponder0
Token_Sherpavip
· 5h atrás
lmao outro ponzi envolto em matemática zk... já vi este filme antes
Ver originalResponder0
DuckFluffvip
· 5h atrás
O teste interno do zkSync foi um grande fracasso.
Ver originalResponder0
  • Pino
Negocie cripto em qualquer lugar e a qualquer hora
qrCode
Digitalizar para transferir a aplicação Gate
Novidades
Português (Portugal)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)