Como as provas de conhecimento zero funcionam e por que são importantes para a privacidade

BTC
ETH
ADA
LINK
MATIC
SOL
UNI
ZEC
Provas de Conhecimento Zeroescalabilidade de blockchainzk-SNARKsprivacidade
2026-08-11Fonte: crypto.news
Como as provas de conhecimento zero funcionam e por que são importantes para a privacidade

Você pode provar que tem mais de 18 anos sem revelar sua data de nascimento. Você pode provar que tem dinheiro suficiente para uma transação sem revelar seu saldo. Você pode provar que um cálculo foi executado corretamente sem revelar as entradas. As provas de conhecimento zero tornam tudo isso possível e estão silenciosamente se tornando o primitivo criptográfico mais importante em blockchain desde a função hash.

Resumo

A maioria das introduções às provas de conhecimento zero começa com a analogia da caverna de Ali Babá, onde alguém prova que conhece a palavra secreta para abrir uma porta, saindo consistentemente pelo lado que o verificador solicita, sem nunca revelar a palavra. A analogia é charmosa e completamente inútil para entender por que as provas ZK importam na prática. Ela diz que tal prova é possível. Não diz por que alguém precisaria de uma em um blockchain.

O ponto de partida prático é mais simples. Todo blockchain enfrenta a mesma tensão: a transparência permite confiança, mas a transparência também destrói a privacidade. O livro-razão do Bitcoin é público. Cada transação, cada saldo, cada endereço é visível para qualquer pessoa. Ethereum é o mesmo. Essa transparência é o que torna o sistema auditável e confiável, mas também significa que qualquer pessoa que descubra qual endereço pertence a você pode ver todas as transações que você já fez, todos os tokens que você possui e todos os protocolos com os quais você interagiu.

As provas de conhecimento zero resolvem essa tensão. Elas permitem que você prove fatos sobre seus dados sem revelar os próprios dados. Você pode provar que seu saldo excede um limite sem revelar o saldo exato. Você pode provar que uma transação é válida sem revelar o remetente, o destinatário ou o valor. Você pode provar que não está em uma lista de sanções sem revelar sua identidade.

A matemática por trás disso é profunda. As aplicações são imediatas.

As três propriedades que toda prova ZK deve ter

Todo sistema de prova de conhecimento zero deve satisfazer três propriedades, e entendê-las é essencial para avaliar qualquer protocolo baseado em ZK.

Completude. Se a afirmação é verdadeira e tanto o provador quanto o verificador seguem o protocolo, o verificador sempre será convencido. Uma prova válida nunca falha na verificação. Se você realmente conhece o segredo, a prova sempre funcionará.

Solidez. Se a afirmação é falsa, nenhum provador desonesto pode convencer o verificador de que ela é verdadeira, exceto com probabilidade desprezível. Um provador desonesto não pode fabricar uma prova válida. A probabilidade de uma prova falsa passar na verificação é tão pequena (tipicamente menos de uma em 2^128) que é efetivamente impossível.

Conhecimento zero. O verificador não aprende nada além do fato de que a afirmação é verdadeira. A prova não vaza nenhuma informação sobre o segredo em si, nenhum cálculo intermediário ou nenhum dado usado para gerar a prova. O conhecimento do verificador após ver a prova é idêntico ao que seria se alguém simplesmente dissesse que a afirmação é verdadeira.

A terceira propriedade é o que torna as provas ZK úteis em vez de meramente corretas. Assinaturas digitais padrão provam que uma mensagem foi assinada por uma chave específica, mas revelam o conteúdo da mensagem. Compromissos de hash padrão provam que um valor foi comprometido, mas revelam o valor quando aberto. As provas ZK provam que uma relação existe entre valores secretos sem revelar esses valores em nenhum momento.

Como zk-SNARKs e zk-STARKs diferem

Os dois sistemas de prova ZK dominantes em blockchain são zk-SNARKs e zk-STARKs. Eles resolvem o mesmo problema com diferentes tradeoffs.

zk-SNARKs (Argumentos de Conhecimento Sucintos e Não Interativos de Conhecimento Zero) produzem provas pequenas que são rápidas de verificar. Uma prova zk-SNARK típica tem cerca de 200 a 300 bytes e pode ser verificada on-chain por aproximadamente 200.000 a 300.000 de gas no Ethereum. O tempo de verificação é constante, independentemente da complexidade do cálculo que está sendo provado. Uma prova que verifica uma única transação leva o mesmo tempo para ser verificada do que uma prova que verifica dez mil transações.

O custo dessa concisão é uma configuração confiável. A maioria dos sistemas zk-SNARK exige uma cerimônia única em que parâmetros aleatórios são gerados e a aleatoriedade é destruída depois. Se a aleatoriedade desta cerimônia não for devidamente destruída, um atacante poderia forjar provas. A Zcash conduziu uma das cerimônias de configuração confiável mais elaboradas da história criptográfica (a cerimônia "Powers of Tau") envolvendo centenas de participantes em todo o mundo, onde a suposição de segurança é que pelo menos um participante destruiu honestamente sua aleatoriedade.

Sistemas SNARK mais novos, como PLONK e Halo 2, reduziram ou eliminaram o requisito de configuração confiável, mas a percepção persiste. Alguns projetos evitam SNARKs especificamente por causa da preocupação com a configuração confiável, mesmo quando as implementações que usariam não exigem uma.

zk-STARKs (Argumentos Transparentes Escaláveis de Conhecimento Zero) eliminam completamente a configuração confiável. Eles derivam sua segurança de funções hash em vez de suposições de curvas elípticas, o que os torna transparentes (sem parâmetros secretos) e teoricamente resistentes a quantum (criptografia baseada em hash é considerada segura contra computadores quânticos, enquanto criptografia de curva elíptica não é).

O trade-off é o tamanho. Provas STARK são significativamente maiores que provas SNARK, tipicamente de dezenas a centenas de kilobytes comparado a centenas de bytes. Em uma blockchain onde o armazenamento de dados custa gás, provas maiores significam custos de verificação mais altos. A StarkWare, principal desenvolvedora da tecnologia STARK, aborda isso usando composição recursiva de provas: provar que uma prova é válida, depois provar que a prova da prova é válida, comprimindo a pegada final na cadeia.

Na prática, a distinção importa menos do que há cinco anos. Sistemas de prova modernos cada vez mais misturam técnicas de ambas as famílias, e o foco da engenharia mudou de qual sistema de prova usar para quão rápido o provador pode gerar provas e quão barato o verificador pode verificá-las.

Provas ZK para escalabilidade de blockchain

A aplicação de escalabilidade das provas ZK é conceitualmente direta. Um rollup executa um lote de transações fora da cadeia, gera uma prova de que o lote foi executado corretamente e publica a prova no Ethereum. O contrato verificador do Ethereum verifica a prova em uma única operação e aceita o novo estado.

O que torna isso poderoso é a assimetria entre provar e verificar. Gerar a prova para um lote de 10.000 transações pode levar vários minutos em uma máquina poderosa. Verificar a prova leva uma fração de segundo e custa uma quantidade fixa de gás, independentemente de quantas transações estão no lote. Essa assimetria é o que permite que os rollups ZK comprimam milhares de transações em uma única verificação no Ethereum.

Os principais rollups ZK cada um adota uma abordagem diferente para essa arquitetura.

zkSync Era usa uma máquina virtual personalizada (zkEVM) que é compatível com Solidity no nível da linguagem, mas compila para um conjunto de instruções diferente otimizado para geração de provas ZK. Contratos Ethereum existentes podem ser recompilados para zkSync com mudanças mínimas.

StarkNet usa a linguagem de programação Cairo e provas STARK. Cairo é uma linguagem criada especificamente para computação provável, o que lhe dá vantagens de desempenho, mas exige que os desenvolvedores aprendam uma nova linguagem e paradigma.

Polygon zkEVM visa equivalência com EVM, ou seja, pode executar o mesmo bytecode que o Ethereum sem recompilação. Isso maximiza a compatibilidade, mas introduz complexidade de engenharia em tornar cada opcode do EVM provável.

Scroll também almeja equivalência total com EVM e usa uma abordagem orientada pela comunidade para sua implementação zkEVM, com o objetivo de ser o rollup ZK mais compatível com Ethereum.

A competição entre essas abordagens é, em última análise, uma competição entre compatibilidade e desempenho. Quanto mais compatível um rollup ZK for com as ferramentas existentes do Ethereum, mais fácil será para os desenvolvedores migrarem. Quanto mais o rollup otimizar seu conjunto de instruções para provabilidade, mais rápidas e baratas suas provas se tornam.

Provas ZK para privacidade

A aplicação de privacidade é onde as provas ZK se tornam mais consequentes e mais controversas.

Uma transação Ethereum padrão revela o endereço do remetente, o endereço do destinatário, o valor transferido e o contrato inteligente chamado. Essa informação é permanentemente pública. Empresas de análise de cadeia como Chainalysis e Elliptic construíram negócios inteiros em rastrear fluxos de transações no livro-razão transparente, vinculando endereços a identidades do mundo real por meio de dados KYC de exchanges, rótulos de entidades conhecidas e padrões comportamentais.

Protocolos de privacidade baseados em ZK quebram essa cadeia de visibilidade. Em uma transação privada baseada em ZK, o usuário gera uma prova de que sua transação é válida (o remetente tem fundos suficientes, não ocorre gasto duplo, os valores se equilibram) sem revelar quem enviou, quem recebeu ou quanto foi transferido. A prova é publicada na cadeia e verificada pela rede, mas os detalhes subjacentes da transação permanecem criptografados.

Zcash foi a primeira grande implementação desse conceito, lançada em 2016 com transações protegidas usando zk-SNARKs. Um usuário de Zcash pode escolher entre transações transparentes (idênticas ao livro-razão público do Bitcoin) e transações protegidas (onde o remetente, o destinatário e o valor ficam ocultos por trás de uma prova ZK). Na prática, a adoção de transações protegidas na Zcash tem sido menor do que os proponentes esperavam, com a maioria das transações ZCash ainda usando o pool transparente.

Novos protocolos estão construindo privacidade programável, onde não apenas transferências de tokens, mas também lógica arbitrária de contratos inteligentes pode ser executada de forma privada. A Aztec Network está construindo uma camada 2 focada em privacidade na Ethereum, onde todas as transações são privadas por padrão. A Aleo está construindo uma blockchain de camada 1 com suporte nativo a ZK para contratos inteligentes privados. Ambos usam provas ZK para verificar transições de estado sem revelar a computação ou os dados envolvidos.

O potencial para privacidade vai além de transações individuais. Provas ZK podem permitir votação privada (provar que você votou sem revelar sua escolha), verificação de identidade privada (provar que você é cidadão de um país específico sem revelar seu número de passaporte) e DeFi privado (fornecer liquidez a um pool sem revelar seu endereço ou tamanho da posição).

A colisão regulatória

A privacidade em criptomoedas ocupa um espaço legal contestado que ainda está sendo definido.

Em agosto de 2022, o Escritório de Controle de Ativos Estrangeiros (OFAC) do Tesouro dos EUA sancionou a Tornado Cash, um misturador baseado em Ethereum que usava provas ZK para quebrar o vínculo entre endereços de depósito e retirada. A sanção de código de contrato inteligente de código aberto, em vez de uma pessoa ou empresa, foi sem precedentes e causou ondas de choque na comunidade de privacidade cripto.

Em maio de 2024, Alexey Pertsev, um dos desenvolvedores da Tornado Cash, foi condenado por um tribunal holandês por facilitação de lavagem de dinheiro. A condenação estabeleceu um precedente legal de que escrever código que preserva a privacidade pode acarretar responsabilidade criminal se a ferramenta for usada para fins ilícitos, independentemente de o desenvolvedor ter facilitado pessoalmente a atividade ilegal.

Essas ações moldaram a direção do desenvolvimento de privacidade ZK. A geração atual de protocolos de privacidade está sendo construída em torno das restrições regulatórias, em vez de ignorá-las.

Divulgação seletiva permite que um usuário prove fatos específicos sobre sua identidade ou histórico de transações sem revelar tudo. Um usuário poderia provar que passou pelo KYC com uma exchange licenciada, provar que não está na lista de sanções do OFAC ou provar que seus fundos não se originaram de um endereço sancionado, tudo usando provas ZK que não revelam nada além da afirmação específica que está sendo verificada.

Pools de privacidade, um conceito formalizado por Vitalik Buterin e outros, permitem que os usuários provem que sua retirada de um conjunto de privacidade pertence a um subconjunto limpo de depósitos. Em vez de misturar todos os depósitos indiscriminadamente, o protocolo mantém conjuntos de associação que excluem endereços ilícitos conhecidos. Os usuários provam a associação ao conjunto limpo sem revelar qual depósito específico estão retirando.

Se esses compromissos satisfarão os reguladores, ainda não se sabe. A tensão fundamental, de que privacidade e vigilância são arquitetonicamente incompatíveis, não será resolvida apenas pela tecnologia. As provas ZK dão aos formuladores de políticas uma ferramenta que nunca tiveram antes: a capacidade de verificar conformidade sem exigir divulgação. Se eles escolhem usá-la é uma questão política, não criptográfica.

O custo de prova tem implicações concretas para quais aplicações adotam a tecnologia ZK primeiro. Transações financeiras de alto valor, onde o custo de gerar uma prova é insignificante em relação ao tamanho da transação, têm sido as primeiras a adotar. Transferências institucionais entre cadeias, grandes posições DeFi e sistemas de liquidação empresarial podem absorver um custo de prova de vários dólares por transação sem afetar sua economia. Aplicações de consumo, onde transações individuais podem valer apenas alguns dólares, precisam que os custos de prova caiam em outra ordem de magnitude antes que a privacidade ZK se torne prática para o uso diário. Os esforços de aceleração de hardware por empresas que constroem ASICs específicos para ZK estão diretamente visando essa barreira de custo.

A convergência de aplicações de escalabilidade e privacidade é talvez o aspecto mais subestimado da tecnologia ZK. Um rollup ZK que processa transações de forma privada combinaria os benefícios de throughput da execução fora da cadeia com os benefícios de confidencialidade das transições de estado criptografadas. Os usuários teriam transações rápidas e baratas que também são invisíveis para a análise de cadeia. Vários projetos, incluindo Aztec e Polygon Miden, estão construindo exatamente essa combinação, embora a complexidade de engenharia de mesclar ambas as capacidades em um sistema de produção continue substancial.

O que isto não cobre

Este artigo não cobre a matemática de compromissos polinomiais, emparelhamentos de curvas elípticas ou transformações Fiat-Shamir que sustentam os sistemas de prova ZK. Compreender isso requer álgebra abstrata de nível de pós-graduação e não é necessário para avaliar protocolos baseados em ZK como usuário ou investidor.

Este artigo não cobre aprendizado de máquina ZK (zkML), um campo emergente que usa provas ZK para verificar que um modelo de aprendizado de máquina produziu uma saída específica sem revelar os pesos do modelo ou dados de treinamento. Esta aplicação é experimental e suas implicações práticas ainda estão sendo estudadas.

Este artigo não aborda a corrida de aceleração de hardware para geração de provas ZK. Empresas como Cysic, Ingonyama e Fabric Cryptography estão construindo ASICs e FPGAs personalizados especificamente para provas ZK, o que poderia reduzir os custos de prova em ordens de magnitude. O cenário de hardware está mudando rápido demais para uma análise estática.

Verificações práticas antes de usar um protocolo baseado em ZK

Verifique o status de auditoria do sistema de prova. Os sistemas de prova ZK são matematicamente complexos e erros de implementação podem ser catastróficos. Um bug no circuito (a representação matemática da computação que está sendo provada) poderia permitir que um atacante forjasse provas e cunhasse tokens ou roubasse fundos. Verifique se o sistema de prova e seus circuitos foram auditados por empresas especializadas em criptografia ZK, não apenas auditores de contratos inteligentes em geral.

Entenda o que é realmente privado. Nem todos os protocolos baseados em ZK fornecem o mesmo nível de privacidade. Alguns ocultam valores de transação, mas revelam endereços. Alguns ocultam endereços, mas revelam valores. Alguns ocultam tudo. Leia a documentação do protocolo para entender exatamente quais informações são ocultadas e o que permanece visível. Metadados como tempo de transação, padrões de gás e frequência de interação podem frequentemente desanonimizar usuários mesmo quando os dados centrais da transação estão ocultos.

Verifique o status da configuração confiável. Se o protocolo usa zk-SNARKs, determine se ele exigiu uma configuração confiável e como essa configuração foi conduzida. Cerimônias de computação multiparte com centenas de participantes são mais confiáveis do que cerimônias pequenas com um punhado de entidades conhecidas. Protocolos que usam STARKs, PLONK com configuração universal ou Halo 2 não exigem configurações confiáveis.

Avalie o risco regulatório. Protocolos de privacidade operam em um ambiente legalmente incerto. Considere se o protocolo tem um mecanismo de conformidade (divulgação seletiva, pools de privacidade, provas de conformidade opt-in) e se esse mecanismo foi testado contra o escrutínio regulatório real. Usar um protocolo de privacidade que é posteriormente sancionado pode complicar sua capacidade de mover ou vender ativos.

Teste o tempo de prova. Gerar uma prova ZK é computacionalmente intensivo. Em um dispositivo móvel, provar uma transação simples pode levar de 30 segundos a dois minutos. Em um desktop, pode levar alguns segundos. Se o tempo de prova for muito longo para o seu caso de uso, o protocolo pode não ser prático para transações frequentes. Alguns protocolos transferem a geração de prova para servidores dedicados, o que é mais rápido, mas introduz uma suposição de confiança de que o servidor não aprende seus dados privados.

  1. O que é uma prova de conhecimento zero em termos simples?

    Uma prova de conhecimento zero é uma forma de provar que algo é verdadeiro sem revelar por que é verdadeiro. No blockchain, isso significa que você pode provar que uma transação é válida, que você possui fundos suficientes ou que um cálculo foi feito corretamente, sem revelar os detalhes reais da transação, seu saldo ou os dados usados no cálculo. O verificador fica convencido de que a afirmação é verdadeira, mas não aprende mais nada.

  2. Qual é a diferença entre zk-SNARKs e zk-STARKs?

    zk-SNARKs produzem provas muito pequenas (centenas de bytes) que são baratas de verificar, mas historicamente exigiam uma cerimônia de configuração confiável para gerar os parâmetros iniciais do sistema. zk-STARKs produzem provas maiores (dezenas a centenas de kilobytes), mas não exigem configuração confiável e são teoricamente resistentes a ataques de computação quântica. Na prática, os sistemas de prova modernos estão convergindo e as compensações entre tamanho, velocidade e suposições de confiança estão se tornando menos acentuadas.

  3. Como as provas ZK ajudam na escalabilidade do blockchain?

    Os rollups ZK executam milhares de transações fora da cadeia e geram uma única prova de que todas as transações foram executadas corretamente. Essa prova é verificada no Ethereum em uma única operação que custa uma quantidade fixa de gás, independentemente de quantas transações estavam no lote. A assimetria entre o custo de gerar uma prova (alto, mas suportado pelo operador do rollup) e verificá-la (baixo e pago uma vez para todo o lote) é o que cria o efeito de escalabilidade.

  4. Moedas de privacidade baseadas em ZK são ilegais?

    Moedas de privacidade baseadas em ZK, como Zcash, não são inerentemente ilegais na maioria das jurisdições. No entanto, as abordagens regulatórias variam significativamente. Algumas exchanges removeram moedas de privacidade de suas listagens para cumprir regulamentações de combate à lavagem de dinheiro. As sanções ao Tornado Cash em 2022 demonstraram que protocolos que preservam a privacidade podem enfrentar ações regulatórias. A legalidade depende da sua jurisdição e de como você usa a tecnologia, não da tecnologia em si.

  5. O que é uma configuração confiável e por que isso importa?

    Uma configuração confiável é uma cerimônia única exigida por alguns sistemas zk-SNARK para gerar parâmetros criptográficos. Durante a cerimônia, valores aleatórios são criados e devem ser destruídos posteriormente. Se algum participante retiver os valores aleatórios, eles poderiam teoricamente forjar provas. Cerimônias multipartidárias mitigam esse risco exigindo que apenas um participante entre potencialmente centenas precise destruir honestamente sua aleatoriedade. Sistemas de prova mais novos, como PLONK e Halo 2, eliminaram ou minimizaram o requisito de configuração confiável.

  6. As provas ZK podem tornar todas as transações de blockchain privadas?

    Tecnicamente, sim. Protocolos como Aztec Network e Aleo estão construindo sistemas onde todas as interações de contratos inteligentes são privadas por padrão, não apenas transferências de tokens. No entanto, a privacidade total para todas as transações introduz desafios regulatórios, aumenta os custos computacionais (a geração de provas ZK é cara) e muda a experiência do usuário (provar leva tempo). Se a privacidade total na cadeia se tornará padrão depende tanto de decisões regulatórias quanto da capacidade técnica.

  7. Como funcionam os pools de privacidade?

    Os pools de privacidade permitem que os usuários depositem fundos em um pool compartilhado e retirem de um endereço diferente, quebrando o vínculo na cadeia entre os dois endereços. Ao contrário dos mixers simples, os pools de privacidade usam provas ZK combinadas com conjuntos de associação para permitir que os usuários provem que sua retirada pertence a um subconjunto de depósitos que exclui endereços ilícitos conhecidos. Isso dá aos usuários privacidade enquanto fornece um mecanismo de conformidade. O usuário prova que está no conjunto limpo sem revelar qual depósito específico está retirando.

  8. Quais são os principais riscos de usar protocolos baseados em ZK?

    Os principais riscos incluem bugs de implementação nos circuitos ZK (que poderiam permitir provas forjadas), vulnerabilidades de configuração confiável em sistemas SNARK mais antigos, ações regulatórias contra recursos de privacidade, altos requisitos computacionais para geração de provas em hardware de consumo e a relativa imaturidade das ferramentas ZK em comparação com o desenvolvimento padrão de contratos inteligentes. Além disso, vazamento de metadados (tempo de transação, padrões de gás, frequência de interação) às vezes pode desanonimizar usuários mesmo quando os dados centrais da transação são privados.