O que é zero-knowledge proof e como isso afeta a tecnologia blockchain?
P√°gina Inicial
Artigos
O que é zero-knowledge proof e como isso afeta a tecnologia blockchain?

O que é zero-knowledge proof e como isso afeta a tecnologia blockchain?

Intermedi√°rio
Publicado em Jan 18, 2023Atualizado em Nov 16, 2023
7m


Este artigo é um envio da comunidade. O autor é Kenny Li, cofundador da Manta Network, um protocolo de Layer-1 de privacidade programável, fomentado pela tecnologia de zero-knowledge proof (prova de conhecimento zero).  

TL;DR

Zero-knowledge proof (ZKP) √© uma tecnologia criptogr√°fica que permite que a veracidade de uma informa√ß√£o seja verificada sem revelar a informa√ß√£o em si. √Č uma tecnologia cada vez mais importante nos setores de criptomoedas, blockchain e finan√ßas descentralizadas (DeFi), usada para melhorar a privacidade e a seguran√ßa.¬†

Muitos projetos DeFi já estão usando ZKPs para fornecer aos usuários melhor privacidade e segurança para serviços como empréstimos e trading. Várias blockchains de Layer-1 estão adicionando zkEVMs ou roll-ups baseados em ZKP. A expectativa é que os ZKPs (também conhecidos como provas de conhecimento zero) desempenhem um papel cada vez mais importante no mundo da blockchain e da Web3, já que seus aplicativos devem ser mais amplamente adotados.

Como funciona o protocolo zero-knowledge proof?

Zero-knowledge proof √© um m√©todo pelo qual uma parte (respons√°vel pela prova) pode provar √† outra parte (verificador) que uma afirma√ß√£o √© verdadeira, sem revelar nenhuma informa√ß√£o adicional. Isso √© particularmente √ļtil quando a informa√ß√£o √© sens√≠vel ou confidencial e a parte respons√°vel pela prova n√£o quer que o verificador tenha acesso a ela.

A parte responsável pela prova fornece uma prova matemática que só ela é capaz de gerar e o verificador pode usar essa prova para verificar a veracidade da afirmação. No entanto, não é possível usar essa prova para se obter a informação original.

Imagine um t√ļnel com duas entradas, A e B. H√° uma porta trancada com um c√≥digo secreto bloqueando o √ļnico caminho e impedindo que as pessoas caminhem pelo t√ļnel de uma ponta a outra (ou seja, de A at√© B). Voc√™ sabe o c√≥digo secreto e quer vend√™-lo para a Sra. X, que deseja acessar o t√ļnel.

Voc√™ quer que ela pague adiantado antes de revelar o c√≥digo, mas primeiro ela quer que voc√™ prove que realmente conhece o c√≥digo. Nesse caso, ela pode simplesmente parar na frente do t√ļnel e observar voc√™ entrar em uma das entradas e sair pela outra. Assim, voc√™ a convencer√° de que realmente sabe qual √© o c√≥digo secreto.

Por que usar zero-knowledge proofs? 

A popularidade dos protocolos zero-knowledge proof nos setores de blockchain e cripto √© impulsionada pela crescente demanda por privacidade e seguran√ßa em transa√ß√Ķes digitais. Com o surgimento da tecnologia blockchain e das criptomoedas, h√° uma necessidade crescente de verificar transa√ß√Ķes sem revelar informa√ß√Ķes confidenciais ‚ÄĒ os ZKPs s√£o capazes de atender a essa necessidade.

Os ZKPs atra√≠ram maior aten√ß√£o e interesse nos √ļltimos anos, com o lan√ßamento de muitos protocolos que utilizam essa tecnologia e as principais blockchains desenvolvendo zk-rollups. Um claro sinal da popularidade dos ZKPs p√īde ser notado na confer√™ncia DevCon 2022, onde mais de 20% de todas as palestras falaram sobre essa tecnologia.

Principais desenvolvimentos

Um desenvolvimento importante no √Ęmbito das provas de conhecimento zero √© o crescente uso de zk-SNARKs, um tipo espec√≠fico de ZKP. Os protocolos zk-SNARKs foram amplamente adotados por v√°rias aplica√ß√Ķes do setor DeFi, como transa√ß√Ķes privadas de tokens e servi√ßos de empr√©stimos com garantia. Outro grande desenvolvimento dos ZKPs √© o maior foco na escalabilidade e no desempenho atrav√©s de zk-rollups.¬†

zk-SNARKs

Zk-SNARKs é a sigla para "zero-knowledge succinct non-interactive argument of knowledge" (do inglês, "argumento de conhecimento sucinto não interativo de conhecimento-zero"). Trata-se de um tipo específico de ZKP que permite que uma declaração seja verificada sem revelar nenhuma informação sobre a declaração em si.

Os protocolos zk-SNARKs j√° foram usados em aplica√ß√Ķes como a Zcash e o sistema de pagamento baseado em blockchain da JP Morgan Chase. Eles tamb√©m t√™m sido usados como uma forma segura de autentica√ß√£o de clientes para servidores.

ZK-Rollups

O protocolo zk-rollups √© uma solu√ß√£o de escalabilidade para redes blockchain que facilita o agrupamento de v√°rias transa√ß√Ķes em uma √ļnica transa√ß√£o maior, que √© registrada na blockchain. Por exemplo, em 2022, a BNB Chain lan√ßou sua rede de testes zkBNB criada com a arquitetura zk-rollups.

A zkBNB √© capaz de agrupar centenas de transa√ß√Ķes em um √ļnico lote off-chain e gerar uma prova criptogr√°fica para provar a validade de todas as transa√ß√Ķes. A solu√ß√£o zk-rollups fornece um equil√≠brio entre escalabilidade e seguran√ßa e √© adequada para configura√ß√Ķes com alto n√≠vel de escalabilidade e baixa lat√™ncia.

Casos de uso para zero-knowledge proofs

Os ZKPs j√° s√£o usados para muitas aplica√ß√Ķes diferentes; a expectativa √© que outras se tornem realidade no futuro. Alguns dos principais casos de uso da tecnologia ZKP incluem:¬†

Verificação de identidade digital

Os ZKPs podem ser usados para verificar identidades dos usu√°rios sem revelar nenhuma informa√ß√£o pessoal confidencial. Isso pode ser √ļtil em aplica√ß√Ķes como sistemas de vota√ß√£o digital, onde as identidades dos eleitores devem ser verificadas sem comprometer seu anonimato.

Transa√ß√Ķes que preservam a privacidade

No setor cripto, um dos principais casos de uso dos ZKPs √© a permiss√£o de transa√ß√Ķes que preservam a privacidade. Por exemplo, o aplicativo descentralizado MantaPay (DApp) da Manta Network, usa ZKPs para permitir que os usu√°rios fa√ßam transa√ß√Ķes na corretora descentralizada (DEX) sem revelar suas identidades ou os detalhes da transa√ß√£o. Isso permite que os usu√°rios usem a plataforma para realizar transa√ß√Ķes e mantenham sua privacidade.

Transa√ß√Ķes protegidas

A Zcash √© uma criptomoeda que usa ZKPs para permitir transa√ß√Ķes protegidas. Nessas transa√ß√Ķes, os endere√ßos do remetente e do destinat√°rio, bem como os valores das transa√ß√Ķes, s√£o ocultados da blockchain p√ļblica, proporcionando maior privacidade aos usu√°rios.

Tokenização e verificação de propriedade

Também é possível usar zero-knowledge proofs para tokenizar ativos e comprovar a sua propriedade. Por exemplo, um imóvel pode ser tokenizado e qualquer pessoa pode verificar sua propriedade sem precisar revelar publicamente nenhuma outra informação.

Conformidade global

Alguns pa√≠ses t√™m regulamentos r√≠gidos em rela√ß√£o √† coleta e compartilhamento de informa√ß√Ķes financeiras, o que pode dificultar a adequa√ß√£o de algumas plataformas descentralizadas. Os protocolos ZKPs podem ser usados para compartilhar informa√ß√Ķes necess√°rias com os reguladores, enquanto mant√™m essas informa√ß√Ķes ocultas para os demais.

Isso pode ajudar a preencher a lacuna entre plataformas descentralizadas e institui√ß√Ķes financeiras tradicionais, facilitando o cumprimento dos regulamentos para o setor DeFi, em v√°rias jurisdi√ß√Ķes.

Futuro do zero-knowledge proof no setor blockchain

ZKPs provavelmente trar√£o mais inova√ß√Ķes tecnol√≥gicas no futuro. Alguns desenvolvimentos futuros not√°veis relacionados ao ZKP incluem:¬†

Layers de privacidade cross-chain

√Ä medida que os ecossistemas blockchain e DeFi continuam crescendo e evoluindo, h√° uma necessidade crescente de interoperabilidade entre diferentes redes blockchain. As layers de privacidade cross-chain permitir√£o que as transa√ß√Ķes sejam realizadas em diferentes blockchains, preservando a privacidade das partes envolvidas.

zk-STARKs

Um aspecto importante é o aumento do uso de zk-STARKs (zero-knowledge scalable transparent argument of knowledge), um tipo mais novo de zero-knowledge proof que é considerado mais eficiente e seguro do que os zk-SNARKs. Outra vantagem dos zk-STARKs sobre os zk-SNARKs é que eles são mais rápidos de verificar e não requerem uma configuração confiável.

Kits de ferramentas fáceis de usar 

A tecnologia de zero-knowledge proof pode ser complexa e nem toda equipe de desenvolvimento tem experiência nessa área específica da criptografia. Kits de ferramentas ZKP fáceis de usar ajudam a lidar com esse problema e facilitam o uso da tecnologia por desenvolvedores de diferentes áreas. 

Limita√ß√Ķes de protocolos zero-knowledge proof

Os ZKPs representam um m√©todo exclusivo de verificar a veracidade de informa√ß√Ķes, preservando a privacidade, mas n√£o fornecem uma garantia de 100%. Embora a probabilidade de verifica√ß√£o seja muito pequena quando o respons√°vel pela prova est√° mentindo, os usu√°rios devem estar cientes de que os ZKPs n√£o s√£o √† prova de falhas.

Al√©m disso, os algoritmos usados para zero-knowledge proofs precisam de muitos recursos computacionais. Para alguns tipos de ZKPs, √© necess√°ria computa√ß√£o intensiva, pois eles exigem muitas intera√ß√Ķes entre os usu√°rios verificadores e os respons√°veis pelas provas. Em outros ZKPs, os algoritmos s√£o extremamente complexos em termos computacionais, o que pode limitar as aplica√ß√Ķes.

Considera√ß√Ķes finais

Os protocolos de zero-knowledge proof est√£o ganhando notoriedade por conta de suas propriedades √ļnicas de preserva√ß√£o de privacidade e potencial de escalabilidade. √Č prov√°vel que a aplica√ß√£o crescente dessa tecnologia nos setores de criptomoedas, blockchain e DeFi proporcionar√° mais servi√ßos inovadores capazes de oferecer muitos benef√≠cios aos usu√°rios. A expectativa √© que os ZKPs desempenhem um papel crucial na cria√ß√£o de ecossistemas de DApps mais seguros, privados e eficientes.

Leituras adicionais