P√°gina Inicial
Gloss√°rio
Zero-Knowledge Proofs

Zero-Knowledge Proofs

Avançado

O zero-knowledge proof (ou prova de conhecimento zero), também conhecido como protocolo zk ou ZKP, é um método de verificação que ocorre entre dois participantes, um comprovador e um verificador. Em um sistema de zero-knowledge proof, o comprovador é capaz de provar ao verificador que ele tem conhecimento de uma determinada informação (como a solução de uma equação matemática) sem revelar a informação em si. Esses sistemas de prova podem ser usados por criptógrafos modernos para fornecer mais privacidade e segurança.

O conceito de zero-knowledge proof foi descrito pela primeira vez em um artigo do MIT de 1985, publicado por Shafi Goldwasser e Silvio Micali. Eles demonstraram que era poss√≠vel provar algumas propriedades de um n√ļmero sem divulgar o n√ļmero em si ou qualquer informa√ß√£o adicional sobre ele. Este artigo tamb√©m introduziu a importante descoberta matem√°tica de que as intera√ß√Ķes entre um comprovador e um verificador podem reduzir a quantidade de informa√ß√Ķes necess√°rias para provar um determinado teorema.¬†

O protocolo zk proof deve atender a dois requisitos b√°sicos: integridade e solidez. A integridade se refere √† capacidade do comprovador de demonstrar conhecimento das informa√ß√Ķes relevantes com um alto grau de precis√£o que pode ser comprovada. Para que a prova seja s√≥lida, o verificador deve ser capaz de determinar com seguran√ßa se o participante respons√°vel pela prova tem, de fato, a posse das informa√ß√Ķes. Por fim, para ser de fato uma prova "de conhecimento zero", ela deve alcan√ßar integridade e solidez sem que as informa√ß√Ķes em quest√£o sejam comunicadas entre o comprovador e o verificador.

Os protocolos zero-knowledge proof s√£o usados principalmente para aplica√ß√Ķes em que privacidade e seguran√ßa s√£o essenciais. Sistemas de autentica√ß√£o, por exemplo, podem empregar zk proofs para verificar credenciais ou identidades sem divulg√°-las. Como um exemplo simples, esse sistema pode ser usado para verificar se uma pessoa possui a senha para um sistema de computador sem a necessidade de revelar qual √© a senha.¬†

Um caso de uso proeminente no mundo real de provas de conhecimento zero pode ser encontrado no mundo da criptomoeda e da tecnologia blockchain. Usando um tipo de zero-knowledge proof conhecido como zk-SNARK (Succinct Non-interactive Argument of Knowledge), criptomoedas com foco em privacidade, como o Zcash,¬†oferecem transa√ß√Ķes blockchain com maiores n√≠veis de privacidade para seus usu√°rios. A Ethereum tamb√©m est√° trabalhando com zk-SNARKs desde sua atualiza√ß√£o Byzantium, implementada em 2017.