Fintech

Provas de Conhecimento Zero: Aprimorando a Privacidade no Blockchain

Protegendo os Dados dos Usuários no Blockchain

Julia Gerstein
03.09.2024
15 min
7.1K

    No mundo atual, os dados pessoais estão sendo rastreados e monitorados mais do que nunca. Seja o seu banco rastreando transações, o seu smartphone registrando sua localização ou câmeras de vigilância em espaços públicos—sempre há alguma forma de coleta de dados acontecendo. Até o seu provedor de internet acompanha de perto suas atividades online.

    Para empresas e indivíduos, isso levanta uma questão importante: como podemos manter a privacidade, especialmente em transações financeiras, em um ambiente tão monitorado? É aí que entram as Provas de Conhecimento Zero (ZKPs). Este método criptográfico avançado permite que os usuários provem a validade de informações—como uma transação financeira—sem expor detalhes específicos. Em essência, oferece uma forma segura de validar dados sem revelar informações sensíveis, tornando-o ideal para indústrias que lidam com dados financeiros confidenciais.

    Ao incorporar as ZKPs em seus processos de negócios, você pode proteger as transações dos clientes, garantindo que os detalhes sensíveis permaneçam privados, ao mesmo tempo em que mantém a transparência necessária para cumprir as regulamentações. É uma ferramenta poderosa para aumentar a confiança e a privacidade no mundo movido a dados de hoje.

    As Provas de Conhecimento Zero (ZKPs) são métodos criptográficos que permitem a alguém provar que sabe ou possui algo, como uma senha, sem revelar a informação real em si.

    As ZKPs vêm em várias formas, incluindo ZK-SNARKs (Argumentos de Conhecimento Não Interativos e Succintos de Conhecimento) e ZK-STARKs (Argumentos de Conhecimento Escaláveis e Transparentes de Conhecimento).

    As ZKPs estão sendo cada vez mais integradas em diversas aplicações de blockchain, desde criptomoedas focadas em privacidade, como ZCash, até soluções de Layer 2, como zkSync, escalando a capacidade de transações.

    Compreendendo as Provas de Conhecimento Zero (ZKPs)

    As Provas de Conhecimento Zero (ZKPs) são uma técnica criptográfica inovadora que permite que uma parte, conhecida como o provador, demonstre a veracidade de uma afirmação para outra parte, chamada de verificador, sem divulgar qualquer informação subjacente além da validade dessa afirmação.

    Em termos práticos, pense da seguinte forma: se você estiver fazendo uma compra no Walmart, as ZKPs permitem que você prove ao Walmart que tem fundos suficientes sem revelar o valor exato em sua conta bancária. A essência de uma ZKP reside em sua capacidade de confirmar a verdade de uma afirmação—como o saldo da sua conta sendo adequado—enquanto mantém todos os detalhes sensíveis em sigilo. Esse método não apenas protege suas informações pessoais, mas também constrói confiança nas transações.

    As implicações das ZKPs são significativas para empresas que buscam aumentar a privacidade e a segurança nas transações financeiras, tornando-se uma ferramenta crítica no cenário em evolução do comércio digital e da proteção de dados. Ao utilizar ZKPs, as empresas podem agilizar processos enquanto garantem a conformidade com as regulamentações de privacidade e protegem a confiança dos clientes.

    Dinâmica Provedor-Verificador.

    Várias plataformas de blockchain estão agora utilizando provas de conhecimento zero (ZKPs) para aprimorar a privacidade em diversas aplicações. Por exemplo, a Zcash usa ZKPs para ocultar detalhes de transações da visibilidade pública, garantindo a anonimidade do usuário. O zkSync, uma solução de escalonamento de camada 2 para Ethereum, utiliza ZKPs para oferecer tanto privacidade quanto escalabilidade aprimorada. Além disso, o Protocolo Aztec foi projetado para facilitar transações privadas e contratos inteligentes por meio do uso de ZKPs, entre outras soluções disponíveis no mercado.

    Para ilustrar a aplicação prática de um protocolo baseado em ZK-proof, considere o cenário de enviar uma mensagem privada via uma plataforma de mensagens em blockchain. Em sistemas de blockchain tradicionais, tais mensagens seriam expostas a todos os participantes da rede, representando um risco para a privacidade. No entanto, ao usar uma plataforma como a Aztec, sua mensagem seria criptografada e agrupada com outras transações em um lote. Um ZKP seria então gerado para validar todo o lote sem divulgar o conteúdo das transações individuais, e essa prova é submetida à blockchain subjacente, como Ethereum, para verificação.

    A Importância das Provas de Conhecimento Zero

    O conceito de ZKPs surgiu na década de 1980 a partir do trabalho inovador de Shafi Goldwasser, Silvio Micali e Charles Rackoff, que buscavam resolver um desafio crítico: como substanciar o conhecimento (como ter fundos suficientes) sem revelar informações sensíveis. Os ZKPs são particularmente relevantes no espaço da blockchain, que enfatiza a privacidade do usuário.

    Para contextualizar isso ainda mais, quando você usa ZKPs em um cenário de varejo, você essencialmente codifica informações financeiras sensíveis em um formato seguro que confirma sua capacidade de pagamento. O sistema do varejista pode então descriptografar essas informações para fins de verificação, sem acessar seu saldo real ou histórico de transações. Esse processo permite transações em que ninguém mais, exceto o varejista, sabe o que foi comprado ou quanto foi gasto.

    Em resumo, as provas de conhecimento zero representam um avanço vital na manutenção da privacidade e segurança nas transações digitais, tornando-se uma ferramenta indispensável para empresas que navegam nas complexidades da proteção de dados e da confiança do cliente na economia digital de hoje.

    Shafi Goldwasser e Silvio Micali

    Ao avaliar as Provas de Conhecimento Zero (ZKPs), elas são caracterizadas por três propriedades fundamentais:

    1. Completude: Isso garante que, se uma afirmação é realmente verdadeira, um provedor confiável pode convencer com sucesso um verificador de confiança desse fato. Por exemplo, se você tem fundos suficientes, pode demonstrar a um varejista como o Walmart que pode arcar com suas compras.

    2. Solidez: Essa propriedade assegura que, se uma afirmação é falsa, nenhum provedor desonesto pode enganar um verificador honesto, fazendo-o acreditar que é verdadeira, exceto por uma chance insignificante. Em termos mais simples, se você não tem os fundos, não pode enganar o Walmart para pensar o contrário, exceto em uma probabilidade extremamente baixa.

    3. Zero-Knowledge: Este princípio mantém que o verificador não aprende nada além da confirmação da veracidade da afirmação; nenhum detalhe adicional sobre os dados subjacentes é revelado. Assim, enquanto o Walmart confirmará sua capacidade de pagamento, permanecerá alheio a quaisquer detalhes específicos sobre sua conta bancária ou histórico de transações.

    As ZKPs são ferramentas essenciais para manter a privacidade no blockchain e além. Suas aplicações se estendem muito além de transações simples. Por exemplo, elas podem ser usadas para verificar a idade sem divulgar a história pessoal, facilitar o compartilhamento seguro de dados confidenciais durante auditorias financeiras e autenticar a legitimidade de produtos em cadeias de suprimento sem revelar segredos comerciais. Na computação em nuvem, as ZKPs podem validar cálculos sem exigir verificações redundantes, enquanto no espaço do blockchain, garantem a privacidade das transações em criptomoedas e permitem que contratos inteligentes operem de forma segura sem expor informações sensíveis.

    Provas Interativas e Não Interativas

    Agora que você está familiarizado com os conceitos-chave da Tecnologia de Zero-Knowledge, vamos explorar seus dois tipos principais: provas interativas e não interativas. Para facilitar a compreensão, usaremos uma analogia culinária envolvendo a preparação de tortas.

    Prova Interativa: Imagine convidar um amigo para assistir você assar uma torta. Ele provaria a massa, o recheio e o produto final para verificar sua autenticidade. Esse processo espelha uma prova interativa, onde o verificador observa todo o processo de criação da prova.

    Prova Não Interativa: Em contraste, se você assasse a torta e simplesmente oferecesse uma fatia para seu amigo provar, ele poderia verificar sua qualidade sem estar presente durante todo o processo de preparo. Isso representa uma prova não interativa, onde o verificador verifica uma prova pré-gerada de forma independente.

    Em termos de blockchain:

    • Prova Interativa: Envolve uma série de trocas entre o provador e o verificador, semelhante ao seu amigo assistindo à preparação da torta.

    • Prova Não Interativa: Aqui, uma única prova pré-gerada é verificada sem necessidade de interação contínua, semelhante a compartilhar uma fatia de torta após a preparação.

    Um excelente exemplo de prova interativa no contexto de blockchain é o TrueBit, um protocolo que permite cálculos off-chain para contratos inteligentes do Ethereum. Ele utiliza um jogo de verificação interativa para validar a correção desses cálculos. O provador envia um resultado computacional, e outros participantes podem desafiá-lo através de uma série de interações para determinar sua validade.

    No entanto, as provas interativas têm uma desvantagem: ambas as partes precisam estar online ao mesmo tempo, o que pode ser ineficiente. É aí que entram as Provas Não Interativas.

    Introduzidas em 1988 por Manuel Blum, Paul Feldman e Silvio Micali, as provas de zero-knowledge não interativas envolvem tanto o provador quanto o verificador compartilhando uma string de referência comum (CRS). Veja como funciona: ambas as partes concordam com uma receita compartilhada (o CRS). O provador assa a torta (cria a prova) seguindo essa receita, e então o verificador prova a torta (verifica a prova). Se a torta tiver o sabor correto, o verificador saberá que a receita foi seguida corretamente.

    Em termos de blockchain, ambas as partes geram um valor público conhecido por ambos, referido como CRS. O provador gera um objeto criptográfico (prova), e o verificador verifica se essa prova está alinhada com o CRS.

    Exemplos de protocolos baseados em provas não interativas incluem zk-SNARKs e zk-STARKs, que discutiremos na próxima seção. Esses protocolos melhoram a eficiência e a segurança, tornando-se fundamentais na evolução da privacidade e da confiança nas aplicações de blockchain.

    Tipos de Provas Não Interativas de Zero-Knowledge: ZK-SNARKs e ZK-STARKs

    Enquanto as Provas Interativas se concentram em interações em tempo real, as Provas Não Interativas permitem que você execute tarefas com um único e bem elaborado comprovante. Isso as torna extremamente eficientes em situações em que conversas contínuas não são necessárias ou desejadas. Os zk-SNARKs e zk-STARKs aprimoram ainda mais o conceito de provas não interativas, elevando a privacidade em blockchain. Vamos entender como isso acontece.

    ZK-SNARKs

    Os ZK-SNARKs (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) são uma forma avançada de provas não interativas. Eles oferecem cinco propriedades essenciais:

    1. Zero-Knowledge: O verificador pode confirmar que uma afirmação é verdadeira sem saber mais nada sobre ela. Apenas a veracidade da afirmação é revelada, sem detalhes adicionais.

    2. Succinct: A prova é menor e mais rápida de verificar do que a informação secreta na qual se baseia, funcionando como um resumo sem a necessidade de ler o livro completo.

    3. Non-Interactive: Ao contrário das Provas Interativas, os ZK-SNARKs exigem apenas uma interação única entre o provador e o verificador, tornando o processo muito mais eficiente.

    4. Argument: A prova é robusta, o que significa que é quase impossível fraudar. Se a afirmação for falsa, nenhum provador desonesto pode convencer o verificador do contrário.

    5. (Of) Knowledge: O provador não pode criar a prova sem conhecer a informação secreta, também chamada de "testemunha". Sem a testemunha, não há como gerar uma prova válida.

    Considere que você assou uma torta de receita secreta e deseja mantê-la única, evitando que outros a copiem. Se alguém conseguir replicar a torta, ela deixaria de ser especial. Da mesma forma, no blockchain, transações maliciosas devem ser difíceis de replicar, garantindo a integridade e a segurança da rede.

    Os zk-SNARKs têm se tornado fundamentais em diversas aplicações blockchain, oferecendo soluções eficientes para questões de privacidade e segurança .

    Alguns 'cozinheiros' trabalham juntos para criar o ingrediente secreto da receita

    Para garantir a singularidade e segurança da “receita”, alguns “cozinheiros” colaboram para criar o ingrediente secreto, referido na terminologia blockchain como a String de Referência Comum (CRS). Após a criação da CRS, os cozinheiros devem "destruir" suas partes individuais da receita para evitar abusos. No entanto, esse processo depende da suposição de que todos os participantes realmente destruirão seus segmentos do segredo. O que acontece se um deles não o fizer? É aqui que entram os ZK-STARKs (Zero-Knowledge Scalable Transparent Arguments of Knowledge).

    ZK-STARKs

    Embora os ZK-SNARKs tenham avançado significativamente nas provas de zero conhecimento ao melhorar a compactação e eficiência, eles também apresentaram desafios, como a necessidade de uma configuração confiável e escalabilidade limitada com conjuntos de dados maiores. Os ZK-STARKs resolvem esses desafios de forma eficaz. Imagine a transição de um telefone flip básico para um smartphone de última geração—sem mais configurações arriscadas e com capacidade aprimorada para lidar com grandes volumes de dados, tornando-os mais poderosos, seguros e fáceis de usar.

    Principais Características dos ZK-STARKs: 

    1. Zero-Knowledge: Assim como os ZK-SNARKs, os ZK-STARKs permitem que o verificador valide a veracidade de uma afirmação sem obter conhecimento adicional. A prova indica apenas se a afirmação é verdadeira ou falsa, sem compartilhar mais detalhes.

    2. Escalável: Os ZK-STARKs são projetados para gerenciar grandes volumes de dados de forma eficiente. A prova permanece concisa e rápida de verificar, independentemente do aumento da complexidade dos dados—semelhante a resumir uma biblioteca inteira em uma única página.

    3. Transparente: Ao contrário dos ZK-SNARKs, que dependem de uma configuração confiável, os ZK-STARKs operam sem quaisquer parâmetros secretos. Essa transparência garante que a segurança do sistema não dependa de informações ocultas ou sensíveis.

    4. Argumento: A prova é extremamente robusta e confiável. Se a afirmação for falsa, é praticamente impossível que um provador desonesto convença o verificador do contrário.

    5. (De) Conhecimento: O provador deve possuir a informação secreta (ou testemunha) para criar uma prova válida. Sem esse conhecimento, gerar uma prova válida não é viável.

    Nesta analogia de assar uma torta, a “receita” nos ZK-STARKs é de conhecimento público, ou seja, todos conhecem os passos a seguir. No entanto, apenas o “cozinheiro” conhece o ingrediente secreto, que é a testemunha. Quando o cozinheiro segue corretamente a receita e assa a torta, isso demonstra seu conhecimento sobre o ingrediente secreto—sem nunca revelar o que é.

    Apenas o “cozinheiro” conhece o ingrediente secreto

    ZK-STARKs representam um avanço significativo nas provas de zero conhecimento, caracterizados por sua transparência e pela eliminação da necessidade de uma configuração confiável. Isso aumenta a segurança e permite a verificação pública da prova em si, sem depender de informações secretas. Tanto ZK-SNARKs quanto ZK-STARKs são ferramentas críticas para alcançar privacidade e escalabilidade em aplicações de blockchain. A escolha entre os dois depende amplamente das necessidades específicas da aplicação.

    Exemplos de Protocolos de Provas de Zero Conhecimento

    ZCash

    • Visão Geral: ZCash é uma criptomoeda focada em privacidade, utilizando zk-SNARKs para facilitar transações totalmente privadas.

    • Mecanismo: Os usuários podem provar que possuem fundos suficientes para uma transação sem revelar o valor ou as identidades do remetente e do destinatário, garantindo a confidencialidade.

    • Dados de Mercado: Em agosto de 2024, ZCash tinha uma capitalização de mercado de aproximadamente $1,3 bilhões, com seu token (ZEC) precificado em torno de $50,00.

    • Significado: ZCash é crucial para usuários que buscam privacidade financeira, permitindo transações sem expor informações sensíveis.

    Railgun

    • Visão Geral: Railgun é um protocolo de privacidade Layer 2 na Ethereum, utilizando provas de zero conhecimento para transações confidenciais e interações de contratos inteligentes.

    • Mecanismo: Emprega zk-SNARKs para garantir privacidade em atividades de finanças descentralizadas (DeFi), permitindo que os usuários negociem e emprestem sem expor detalhes das transações.

    • Dados de Mercado: Em agosto de 2024, a capitalização de mercado do Railgun era de cerca de $150 milhões, com seu token (RAIL) avaliado em cerca de $1,20.

    • Significado: Railgun aumenta a confidencialidade em plataformas DeFi baseadas em Ethereum, essencial para a privacidade do usuário.

    Tornado Cash

    • Visão Geral: Tornado Cash é uma solução de privacidade descentralizada para transações Ethereum, utilizando zk-SNARKs para desvincular a conexão on-chain entre remetentes e destinatários.

    • Mecanismo: Os usuários depositam Ethereum ou tokens ERC-20, que são misturados para obscurecer suas origens, permitindo retiradas para diferentes endereços.

    • Dados de Mercado: Em agosto de 2024, o Total Value Locked (TVL) do Tornado Cash era de aproximadamente $400 milhões.

    • Significado: Oferece um alto nível de privacidade nas transações, atraindo usuários que priorizam o anonimato.

    Aztec Network

    • Visão Geral: Aztec Network é outro protocolo de privacidade Layer 2 na Ethereum, utilizando zk-SNARKs para transações e interações confidenciais.

    • Mecanismo: Ele criptografa os dados da transação e valida as transações sem revelar informações sensíveis na blockchain.

    • Dados de Mercado: Em agosto de 2024, a Aztec Network tinha uma capitalização de mercado em torno de $80 milhões, com seu token (AZT) precificado em aproximadamente $2,50.

    • Significado: Permite recursos de privacidade para transações DeFi, protegendo detalhes financeiros.

    zkSync

    • Visão Geral: zkSync é uma solução de escalabilidade Layer 2 para Ethereum que utiliza zk-rollups para melhorar a capacidade de transações e reduzir taxas.

    • Mecanismo: Ao agrupar múltiplas transações em uma única prova verificada na Ethereum, zkSync melhora a escalabilidade enquanto mantém a segurança.

    • Dados de Mercado: Em agosto de 2024, o zkSync tinha um TVL de cerca de $1,2 bilhões.

    • Significado: Otimiza a eficiência das transações, beneficiando usuários e desenvolvedores na rede Ethereum.

    Tendências Futuras em Provas de Zero Conhecimento

    O futuro das provas de zero conhecimento (ZKPs) parece promissor à medida que inovações continuam a surgir. Tanto zk-SNARKs quanto zk-STARKs estão abrindo caminho para novas capacidades, focando na redução das demandas computacionais e na melhoria do desempenho. Isso pode levar redes de blockchain a operarem com uma eficiência sem precedentes.

    As ZKPs também estão prontas para se integrar a tecnologias emergentes como IA e IoT, promovendo interações seguras que protegem a privacidade do usuário. Em breve, poderemos ver aplicações em sistemas de votação seguros, registros médicos confidenciais e transações comerciais sensíveis, onde provar validade sem expor detalhes se torna essencial.

    À medida que as ZKPs evoluem, a padronização dessas tecnologias facilitará uma adoção mais ampla, garantindo compatibilidade em várias plataformas. Equilibrar inovação com conformidade regulatória continuará sendo crucial, especialmente na manutenção da segurança enquanto se adere a regulamentos de combate à lavagem de dinheiro e financiamento do terrorismo.

    Em resumo, as provas de zero conhecimento estão prontas para revolucionar a privacidade e segurança digital, promovendo um ambiente online mais seguro e eficiente. Sua crescente influência em vários setores ressalta a importância de estar informado sobre essas tecnologias transformadoras.

    Conclusão

    À medida que avançamos, é evidente que as provas de zero conhecimento não são meramente conceitos futuristas, mas tecnologias fundamentais que moldam o futuro da privacidade e segurança digital. Suas aplicações vão desde o aprimoramento de transações em blockchain até a habilitação de interações seguras em diversos domínios. A jornada das provas interativas para zk-SNARKs e zk-STARKs sofisticadas destaca uma evolução significativa em direção a sistemas mais eficientes, garantindo a confidencialidade dos dados enquanto possibilita validações necessárias.

    Com o potencial de integração em IA e IoT, as ZKPs estão prestes a expandir suas aplicações, revolucionando a forma como abordamos a privacidade na era digital. No entanto, navegar no cenário regulatório será crucial para aproveitar plenamente as capacidades das ZKPs de maneira responsável.

    Em conclusão, as provas de zero conhecimento estão posicionadas para redefinir a privacidade digital, tornando imperativo que as partes interessadas fiquem atentas a essa tecnologia transformadora. O futuro parece promissor, graças a esses notáveis avanços na criptografia.

    As ZKPs são métodos criptográficos que permitem que uma parte prove a veracidade de uma afirmação sem revelar detalhes sobre a própria afirmação. Eles garantem que o verificador saiba apenas se a afirmação é verdadeira ou falsa, sem obter informações adicionais.

    Os ZKPs vêm em tipos interativos e não interativos. As provas interativas envolvem trocas de informações entre as partes para provar o conhecimento, enquanto as provas não interativas utilizam uma chave compartilhada para uma única prova estática. Ambos os tipos têm como objetivo verificar as afirmações mantendo os dados subjacentes em segredo.

    Os ZKPs melhoram a privacidade na blockchain ao permitir transações confidenciais, votações seguras e soluções de escalabilidade eficientes, como os zk-rollups. Eles são utilizados em projetos como ZCash e zkSync para manter os detalhes das transações em sigilo e aumentar a eficiência do sistema.

    Compartilhar artigo
    Descubra o conceito de blockchains modulares e rollups, incluindo rollups otimistas e ZK, e seu impacto no ecossistema Ethereum
    13.11.2024
    14 min
    58
      Envie sua ideia para nosso próximo post