zk-SNARK é o acrônimo de argumento de conhecimento sucinto não interativo de conhecimento-zero, ou seja, é uma forma usada para provar que você possui uma informação sem precisar revelar a informação. Dito isto, a privacidade das transações é elevada.
A primeira blockchain a utilizar este conceito foi o Zcash (ZEC), neste caso a informação é a chave secreta. Sendo assim, a parte que precisa provar que detêm a informação não necessita relevar a mesma, apenas provar a validade da informação para a outra parte, o verificador.
As transações no Zcash não são anônimas por padrão, o usuário precisa ativá-las e a vasta maioria dos usuários não as utiliza. Talvez pelo fato de que um computador padrão demore alguns minutos para criar uma transação anônima pois é necessário um enorme esforço computacional.
Além disso, os zk-SNARKs precisam de uma chave secreta especial para configurar todo o sistema. Caso esta chave for comprometida, o atacante poderá criar moedas e então matar o projeto. Tal fase é conhecida como Cerimônia de Geração de Parâmetros, um procedimento um tanto centralizado e que depende de segurança.
Por fim os computadores quânticos também podem ser uma ameaça às blockchains que utilizam zk-SNARKs, pois com poder computacional suficiente poderia criar provas falsas.
O que são zk-STARKs?
zk-STARK é o acrônimo de argumento de conhecimento transparente escalável de conhecimento-zero, ou seja, o T é de Transparência, afinal não é necessário uma cerimônia que depende de confiança como a do Zcash para dar o ponta-pé inicial.
Além disso os zk-STARKs se sobressaem em outros pontos, é exigido um menor poder computacional para a criação de provas, a escalabilidade pode ser melhorada e não são vulneráveis a ataques de computadores quânticos.
A evolução neste meio é inevitável, testes com zk-STARKs estão sendo feitos na blockchain do Ethereum, e os resultados são animadores, 550 transações por segundo.
Quando perguntado sobre a visão do Ethereum 3.0, Vitalik Buterin, disse:
“STARKs, STARKs e STARKs”
Comparações entre zk-SNARK e zk-STARK:
Caso tenha interesse em um conteúdo mais técnico, consulte o whitepaper da Zcash e o whitepaper do zk-STARK.