zk-SNARKs panorâmica: evolução tecnológica, perspectivas de aplicação e inovação em Blockchain

Revisão abrangente da tecnologia zk-SNARKs e seus últimos desenvolvimentos no campo do Blockchain

Resumo

zk-SNARKs(ZKP) tecnologia como uma das inovações mais importantes no campo do Blockchain, atraiu ampla atenção do meio acadêmico e da indústria. Este artigo apresenta uma revisão sistemática do desenvolvimento do ZKP nos últimos quarenta anos e das pesquisas mais recentes, com foco na análise de tecnologias ZKP baseadas em circuitos, ZKVM, ZKEVM e outros ambientes computacionais, assim como de soluções de escalabilidade Layer 2 como ZK Rollup. O artigo também explora conceitos emergentes como ZKCoprocessor, ZKML, ZKThreads, e antecipa as perspectivas de aplicação do ZKP em escalabilidade, interoperabilidade e proteção de privacidade no Blockchain. Através de uma análise abrangente do desenvolvimento tecnológico e das tendências de aplicação do ZKP, este artigo oferece uma visão sistemática para entender e aplicar a tecnologia ZKP, demonstrando seu enorme potencial para melhorar a eficiência e segurança dos sistemas de Blockchain.

Índice

  1. Introdução
  2. Conhecimentos básicos sobre zk-SNARKs
  3. zk-SNARKs não interativos
  4. Prova de conhecimento zero baseada em circuito
  5. zk-SNARKs modelo
  6. Visão geral e desenvolvimento da máquina virtual de zk-SNARKs
  7. Visão geral e desenvolvimento do zk-SNARKs na máquina virtual Ethereum
  8. Visão geral e desenvolvimento da solução de rede de segunda camada zk-SNARKs
  9. Direções futuras do zk-SNARKs
  10. Conclusão

1. Introdução

Com o rápido desenvolvimento da tecnologia Blockchain, milhões de transações são realizadas diariamente em várias plataformas. Os grandes volumes de dados gerados por essas transações geralmente contêm informações pessoais sensíveis, como identidade do usuário, montante da transação, endereço da conta, entre outros. Devido à abertura e transparência do Blockchain, esses dados são visíveis para todos, o que levanta várias questões de segurança e privacidade.

Atualmente, existem várias tecnologias de criptografia que podem enfrentar esses desafios, incluindo criptografia homomórfica, assinaturas em anel, computação multipartidária e zk-SNARKs. Dentre elas, zk-SNARKs (ZKP) como uma solução mais abrangente, permite verificar a validade de certas proposições sem revelar quaisquer dados intermediários. ZKP não requer uma infraestrutura de chave pública complexa, e sua implementação repetida também não oferece aos usuários mal-intencionados a oportunidade de obter informações úteis adicionais.

A característica do ZKP faz com que desempenhe um papel central nas transações de Blockchain e nas aplicações de criptomoedas, especialmente na proteção da privacidade e na escalabilidade da rede. O ZKP não se tornou apenas o foco da pesquisa acadêmica, mas também uma pista de destaque para aplicações industriais e investimentos de risco. Muitos projetos de rede baseados em ZKP surgiram, como ZkSync, StarkNet, Mina, Filecoin e Aleo. Com o desenvolvimento desses projetos, inovações algorítmicas relacionadas ao ZKP estão surgindo sem parar. Além disso, o desenvolvimento de hardware relacionado à tecnologia ZKP também está avançando rapidamente, incluindo chips otimizados especificamente para ZKP.

Este artigo tem como objetivo organizar sistematicamente o conhecimento relacionado a ZKP, fornecendo referências para decisões de investimento futuras. Revisamos de forma abrangente os principais artigos acadêmicos relacionados a ZKP, ao mesmo tempo em que analisamos detalhadamente a documentação e os white papers dos projetos líderes neste campo. Esta coleta e análise abrangentes de materiais fornecem uma base sólida para a redação deste artigo.

2. Conhecimentos Básicos sobre zk-SNARKs

2.1 Visão Geral

O conceito de zk-SNARKs ( foi proposto pela primeira vez por Goldwasser, Micali e Rackoff em 1985. Eles definiram o conceito de conhecimento como "saída de um cálculo impraticável", ou seja, o conhecimento deve ser a saída de uma função complexa. Eles também introduziram o conceito de "complexidade do conhecimento" para quantificar a quantidade de conhecimento que o provador revela ao verificador.

As três características básicas do ZKP incluem:

  1. Completude: Se a prova é verdadeira, um provador honesto pode convencer um verificador honesto desse fato.
  2. Confiabilidade: se o provador não souber o conteúdo da declaração, ele só pode enganar o verificador com uma probabilidade insignificante.
  3. Propriedade de zero conhecimento: após a conclusão do processo de prova, o validador só recebe a informação de que "o provador possui este conhecimento", sem obter nenhum conteúdo adicional.

) 2.2 zk-SNARKs exemplo

Para uma melhor compreensão do ZKP e suas propriedades, aqui está um exemplo de como verificar se um provador possui certas informações privadas, dividido em três fases: configuração, desafio e resposta.

Primeiro passo: configurar

  • O provador escolhe dois grandes números primos p e q, calcula n = p * q
  • Calcule v = s^2 mod n, s é um número secreto
  • Escolher r aleatoriamente, calcular x = r^2 mod n e enviar ao verificador

Segundo passo: Desafio O validador escolhe aleatoriamente a### ou 1( e envia para o provador.

Terceiro passo: Resposta

  • Se a = 0, o provador envia r
  • Se a = 1, o provador calcula y = r * s mod n e envia

Os validadores verificam se a equação é verdadeira com base nos valores recebidos. Repetir este processo várias vezes pode reduzir a probabilidade de fraude.

3. Provas de conhecimento zero não interativas

) 3.1 Contexto

As ZKP tradicionais normalmente requerem várias interações para completar a autenticação. No entanto, em certos cenários, como transações instantâneas ou votações, muitas vezes não há oportunidade para várias interações. Assim, o conceito de prova não interativa de conhecimento zero ###NIZK( surgiu.

) 3.2 Proposta de NIZK

Em 1988, Blum, Feldman e Micali apresentaram pela primeira vez o conceito de NIZK. O NIZK pode ser dividido em três fases: configuração, cálculo e verificação. O modelo da string de referência pública ###CRS( que eles propuseram, baseia-se no compartilhamento de uma string por todos os participantes para realizar a prova NIZK de um problema NP.

) 3.3 Fiat-Shamir

A transformação Fiat-Shamir é um método que converte ZKP interativo em não interativo. Este método reduz o número de interações ao introduzir funções hash e baseia-se em suposições de segurança para garantir a veracidade da prova e suas características de difícil falsificação.

3.4 Jens Groth e a sua pesquisa

A pesquisa de Jens Groth impulsionou enormemente a aplicação do ZKP na criptografia e na tecnologia Blockchain. Ele propôs várias soluções NIZK melhoradas, como sistemas NIZK eficientes baseados em grupos bilineares.

3.5 Outras pesquisas

Outras importantes pesquisas em NIZK incluem o esquema de criptografia de chave pública de Cramer e Shoup, o método de transformação Fiat-Shamir aprimorado por Damgård e outros, o conceito de "confiabilidade fraca atribuível" proposto por Ventre e Visconti, bem como a transformação de Unruh.

4. Provas de conhecimento zero baseadas em circuitos

4.1 Contexto

No campo da criptografia, especialmente ao lidar com tarefas de computação que requerem alta paralelização e tipos específicos de cálculo, o modelo de circuito demonstra vantagens únicas em comparação com o modelo tradicional de máquina de Turing.

4.2 Conceitos e características básicas do modelo de circuito

Os modelos de circuitos dividem-se principalmente em duas grandes categorias:

  • Circuito aritmético: composto principalmente por portas de adição e multiplicação, utilizado para processar elementos sobre um campo finito.
  • Circuito lógico: composto por portas lógicas básicas como portas AND, OR e NOT, usado para processar operações booleanas.

4.3 Design e Aplicação de Circuitos em zk-SNARKs

No sistema ZKP, o processo de design de circuitos envolve expressar o problema a ser provado como um circuito. Este processo geralmente inclui a representação do problema, otimização do circuito, conversão para uma representação polinomial, geração de uma string de referência pública ###CRS(, geração e verificação da prova, entre outros passos.

) 4.4 Defeitos e desafios potenciais

Os principais desafios enfrentados por ZKP baseados em circuitos incluem:

  • Complexidade e escala de circuitos
  • Otimização de dificuldade
  • Adaptabilidade a tarefas de cálculo específicas
  • Dificuldade de implementação de algoritmos criptográficos
  • Consumo de recursos

Para resolver esses problemas, os pesquisadores propuseram técnicas de compressão de circuitos, design modular, aceleração de hardware e outras soluções de melhoria.

5. zk-SNARKs modelo

5.1 Contexto

A versatilidade do ZKP baseado em circuitos é bastante limitada, sendo necessário desenvolver novos modelos e algoritmos para problemas específicos. Esta seção apresentará alguns dos principais modelos de ZKP.

5.2 Modelos de Algoritmos Comuns

  1. Modelo zkSNARK: proposto por Bitansky et al. em 2011, é um mecanismo ZKP aprimorado.
  2. O modelo de Ben-Sasson: Focado no modelo ZKP para validar a execução de programas na arquitetura RISC de von Neumann.
  3. Modelo Pinocchio: um conjunto completo de geração de ZKP não interativo, que inclui um compilador avançado.
  4. Modelo Bulletproofs: não requer configuração confiável, o tamanho da prova cresce de forma logarítmica com o tamanho do valor de testemunha.
  5. Modelo Ligero: um modelo ZKP leve, cuja complexidade de comunicação é proporcional à raiz quadrada do tamanho do circuito de verificação.

5.3 Proposta baseada em PCP linear e problema do logaritmo discreto

Esses esquemas incluem os modelos Groth16, Sonic, PLONK e Marlin, entre outros. Esses modelos têm suas próprias vantagens em termos de eficiência e funcionalidade.

5.4 Plano baseado em prova de pessoas comuns

"Prova de Pessoas Comuns" é um novo método de ZKP proposto por Goldwasser, Kalai e Rothblum. Os modelos baseados nesse conceito incluem os modelos Hyrax, Libra e Spartan.

5.5 Prova de conhecimento zero baseada em PCP### verificável por probabilidade (

Esses modelos incluem o modelo STARK, o modelo Aurora, o modelo Succinct Aurora e o modelo Fractal, entre outros. Esses modelos geralmente têm melhor escalabilidade e transparência.

) 5.6 Classificação da fase de configuração da construção de prova genérica baseada em CPC###

O modelo ZKP pode ser dividido em três gerações com base nas características da fase de configuração:

  • Primeira geração (G1): cada circuito requer uma configuração de confiança separada.
  • Segunda geração (G2): definir todos os circuitos uma vez inicialmente.
  • Terceira geração (G3): sistema de prova que não requer uma configuração de confiança.

6. Visão Geral e Desenvolvimento do zk-SNARKs

( 6.1 Contexto

zk-SNARKs Máquina Virtual ) ZKVM ### é uma máquina virtual focada em ZKP, que expande as funcionalidades da VM tradicional, podendo de forma generalizada reduzir a barreira de desenvolvimento de circuitos de conhecimento zero.

( 6.2 Classificação do ZKVM existente

De acordo com os objetivos de design, pode ser dividido principalmente em três categorias:

  1. Tipo mainstream ZKVM: como RISCZero, PolygonMiden, zkWASM, etc.
  2. ZKVM equivalente ao EVM: projetado especificamente para ser compatível com a Máquina Virtual Ethereum )EVM###.
  3. zk-SNARKs otimizado tipo ZKVM: como Cairo-VM, Valida, TinyRAM, etc.

( 6.3 Paradigmas de Front-end e Back-end

Os sistemas ZKP podem ser geralmente divididos em duas partes: front-end e back-end. O front-end utiliza principalmente linguagens de baixo nível para representar linguagens de alto nível, enquanto o back-end converte os circuitos descritos pelas linguagens de baixo nível construídas pelo front-end em provas geradoras e na verificação da correção.

) 6.4 Vantagens e desvantagens do paradigma ZKVM

As vantagens incluem a utilização de ISA existente, suporte a múltiplos programas com um único circuito, circuitos de estrutura repetitiva, entre outros. As desvantagens incluem os custos associados à generalidade, operações de alto custo e custos elevados de prova.

7. Visão geral e desenvolvimento do zk-SNARKs Ethereum Virtual Machine

7.1 Background

zk-SNARKs Máquina Virtual Ethereum ### ZKEVM ### é projetada especificamente para Ethereum, sendo utilizada principalmente para verificar a correção da execução de contratos inteligentes, ao mesmo tempo que protege a privacidade das transações.

( 7.2 Como funciona o ZKEVM

O fluxo de trabalho do ZKEVM inclui:

  1. Processamento do programa do nó
  2. Gerar prova zk-SNARKs
  3. Prova de Agregação
  4. Enviar para o contrato L1

) 7.3 O processo de implementação do ZKEVM

O processo de implementação do ZKEVM inclui etapas como a obtenção de dados, o processamento de dados, a geração de provas, a prova recursiva e a submissão de provas.

7.4 Características do ZKEVM

As principais características do ZKEVM incluem o aumento da capacidade de processamento de transações, proteção de privacidade e validação eficiente.

8. Visão geral e desenvolvimento da solução de rede de camada dois zk-SNARKs

8.1 Contexto

zk-SNARKs Layer 2 solução ###ZK Rollup### é uma solução de escalabilidade para Ethereum, que supera a desvantagem do longo tempo de confirmação final das transações dos Optimistic Rollups.

( 8.2 Mecanismo de funcionamento do ZK Rollup

ZK Rollup permite a escalabilidade dentro de uma única transação, reduzindo o uso de recursos computacionais no Ethereum ao executar transações fora da cadeia e depois reintroduzindo a transação assinada final na cadeia.

) 8.3 Desvantagens e otimizações do ZK Rollup

O principal problema do ZK Rollup é que o custo computacional é muito alto. As soluções de otimização incluem:

  1. Otimizar o cálculo do algoritmo de senha
  2. Mistura de Optimistic e ZK Rollup
  3. Desenvolver um ZK EVM dedicado
  4. Otimização de Hardware

9. Direções Futuras do zk-SNARKs

9.1 Aceleração do desenvolvimento do ambiente de computação

O futuro do desenvolvimento de ZKP inclui circuitos integrados ZK-ASIC### e co-processadores ZKCoprocessor###, entre outros.

( 9.2 ZKML de

ZK4.39%
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
  • 6
  • Partilhar
Comentar
0/400
MoonlightGamervip
· 21h atrás
Os cães estão todos a estudar zk.
Ver originalResponder0
VirtualRichDreamvip
· 07-18 17:20
Chegou a época de bonificação do zk, certo?
Ver originalResponder0
BearMarketSurvivorvip
· 07-18 17:19
O rei do L2 ainda tem que ver o ZK
Ver originalResponder0
GlueGuyvip
· 07-18 17:12
Mais uma vez falando sobre zk, onde está o dinheiro?
Ver originalResponder0
MidnightMEVeatervip
· 07-18 17:00
Às três da manhã, há alguém a fazer bolinhos de zongzi?
Ver originalResponder0
DefiSecurityGuardvip
· 07-18 16:55
hmm... todas essas novas implementações zk, mas ninguém está falando sobre os VETORES DE ATAQUE CRÍTICOS... descuido clássico de segurança. DYOR ppl
Ver originalResponder0
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)