zk-SNARKs: da quebra teórica às aplicações Web3

robot
Geração do resumo em andamento

zk-SNARKs:história, aplicações e princípios

I. Desenvolvimento dos zk-SNARKs

O sistema moderno de zk-SNARKs tem origem no artigo de 1985, coautorado por Goldwasser, Micali e Rackoff. Este artigo explora a quantidade de conhecimento que deve ser trocada para provar a validade de uma afirmação através de múltiplas interações em um sistema interativo. Se a troca de conhecimento puder ser realizada de forma a não revelar informações, isso é denominado zk-SNARK. Os primeiros sistemas de zk-SNARKs apresentavam deficiências em termos de eficiência e aplicabilidade, permanecendo principalmente no nível teórico.

Nos últimos dez anos, com o surgimento da criptografia no campo das criptomoedas, os zk-SNARKs começaram a prosperar. Dentre eles, a construção de protocolos zk-SNARKs gerais, não interativos e com tamanho de prova limitado tornou-se uma das direções principais de exploração. O cerne dos zk-SNARKs reside na ponderação entre a velocidade de prova, a velocidade de verificação e o tamanho da prova.

O artigo publicado por Groth em 2010 foi um avanço importante no campo das provas de conhecimento zero, estabelecendo a base teórica para zk-SNARKs. Em 2015, a Zcash adotou um sistema de provas de conhecimento zero para implementar a proteção da privacidade das transações, marcando um progresso significativo da tecnologia em termos de aplicação. Desde então, zk-SNARKs foram combinados com contratos inteligentes, expandindo cenários de aplicação mais amplos.

Outros resultados acadêmicos importantes incluem:

  • Pinóquio de 2013: comprimindo provas e reduzindo o tempo de verificação a um intervalo prático
  • Groth16 de 2016: redução do tamanho da prova e aumento da eficiência de verificação
  • Bulletproofs de 2017: propôs provas de conhecimento zero não interativas curtas sem configuração confiável
  • zk-STARKs de 2018: proposta de protocolo ZK-STARK que não requer configuração confiável

O surgimento de tecnologias como PLONK e Halo2 também trouxe melhorias adicionais para zk-SNARKs.

HashKey ZK 101 Edição 1: Princípios Históricos e Indústria

Dois, a aplicação de zk-SNARKs

As aplicações mais amplas de zk-SNARKs são a proteção da privacidade e a escalabilidade. Projetos de transação privada iniciais como Zcash e Monero atraíram bastante atenção, mas devido à demanda real estar aquém das expectativas, foram gradualmente afastados do mainstream. Nos últimos anos, com a transição do Ethereum 2.0 para uma abordagem centrada em rollups, as soluções de escalabilidade baseadas em ZK voltaram a ser o centro das atenções.

transações privadas

Os principais projetos de transações privadas incluem:

  • Zcash e Tornado que utilizam zk-SNARKs
  • Usar Monero com Bulletproof

Tomando o Zcash como exemplo, o processo de transação com zk-SNARKs inclui: configuração do sistema, geração de chaves, cunhagem, transação, verificação e recebimento. No entanto, o Zcash ainda apresenta algumas limitações, como ser baseado no modelo UTXO e ter dificuldade de escalabilidade. A proporção real de transações privadas utilizadas é inferior a 10%, o que indica que sua promoção não foi bem-sucedida.

Em comparação, o Tornado utiliza um único grande pool de mistura de moedas de forma mais genérica, e é baseado na rede Ethereum. O Tornado é essencialmente um pool de mistura que utiliza zk-SNARKs, podendo oferecer várias características de proteção de privacidade.

HashKey ZK 101 Edição: Princípios Históricos e Indústria

expansão

A aplicação de zk na escalabilidade pode ser dividida em redes de primeira camada ( como Mina ) e redes de segunda camada (, ou seja, zk-rollup ). A ideia central do zk-rollup foi proposta pela primeira vez por Vitalik em 2018.

zk-rollup envolve principalmente duas funções: Sequencer e Aggregator. O Sequencer é responsável por empacotar transações, enquanto o Aggregator é responsável por combinar transações e gerar provas zk-SNARKs, que são utilizadas para atualizar a árvore de estado do Ethereum.

As vantagens do zk-rollup incluem: baixos custos, finalização rápida, proteção de privacidade, entre outras. As desvantagens incluem: grande carga computacional, considerações de segurança ( como SNARKs que requerem configuração confiável ), e a possibilidade de alterar a ordem das transações, entre outras.

Atualmente, os principais projetos de zk-rollup no mercado são: StarkNet, zkSync, Aztec Connect, Polygon Hermez/Miden, Loopring, Scroll, entre outros. Esses projetos, na sua linha técnica, fazem principalmente uma escolha entre SNARK( e suas versões melhoradas ) e STARK, assim como o nível de suporte ao EVM.

A compatibilidade do sistema ZK com a EVM tem sido um foco de atenção na indústria. Atualmente, existem duas principais soluções: compatibilidade total com os códigos de operação Solidity ou o design de uma nova máquina virtual amigável ao ZK que seja compatível com o Solidity. Nos últimos anos, a tecnologia tem evoluído rapidamente, e a compatibilidade da EVM melhorou significativamente, oferecendo mais conveniência aos desenvolvedores.

HashKey ZK 101 Edição 1: Princípios Históricos e Indústria

Três, o princípio básico do zk-SNARKs

zk-SNARKs deve satisfazer três propriedades: integridade, confiabilidade e a propriedade de zero conhecimento. zk-SNARK(Argumento de Conhecimento Succinto Não Interativo de Zero Conhecimento) como uma importante solução de zero conhecimento, possui as seguintes características:

  • zk-SNARKs: o processo de prova não vaza informações adicionais
  • Simplicidade: volume de verificação pequeno
  • Não interativo: não requer múltiplas interações
  • Confiabilidade: provadores com capacidade de cálculo limitada não conseguem falsificar provas
  • Conhecimento: o provador deve conhecer informações válidas para construir a prova

HashKey ZK 101 Edição 1: Princípios Históricos e Indústria

Tomando como exemplo o zk-SNARK Groth16, o seu princípio de prova inclui os seguintes passos:

  1. Converter o problema em circuito
  2. Converter o circuito para a forma R1CS
  3. Conversão de R1CS para a forma QAP
  4. Estabelecer configurações de confiança, gerar parâmetros aleatórios
  5. Gerar e verificar zk-SNARKs

HashKey ZK 101 Edição 1: Princípios Históricos e Indústria

ZK-1.09%
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
  • 5
  • Compartilhar
Comentário
0/400
MevWhisperervip
· 5h atrás
Venha ver, estou interessado!
Ver originalResponder0
Frontrunnervip
· 11h atrás
Eh, ainda não é tão bom quanto L2.
Ver originalResponder0
tx_pending_forevervip
· 11h atrás
Quando conseguirei entender zk...
Ver originalResponder0
SelfRuggervip
· 12h atrás
zk é realmente bom! Finalmente salvou o mercado.
Ver originalResponder0
LightningClickervip
· 12h atrás
A expansão acelerada do universo à velocidade da luz está a acontecer~
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)