Certamente você, como usuário de bitcoin, éter ou qualquer outra criptomoeda, estava preocupado que alguém pudesse ver quantas moedas você tem em sua carteira, para quem você as transferiu e de quem as recebeu. Há muita controvérsia em torno de criptomoedas anônimas, mas não se pode discordar de algo, como o gerente de projetos da Monero, Riccardo Spagni, disse em sua conta no Twitter: "E se eu não quiser que o caixa do supermercado saiba quanto dinheiro tenho? no balanço e em que eu os gasto? "

Neste artigo, consideraremos o aspecto tecnológico do anonimato - como eles o fazem e forneceremos uma breve visão geral dos métodos mais populares, seus prós e contras.
Hoje, existem cerca de uma dúzia de blockchains que permitem transações anônimas. Ao mesmo tempo, para alguns, o anonimato das transferências é obrigatório, para outros é opcional, alguns ocultam apenas destinatários e destinatários, enquanto outros não permitem que terceiros vejam até a quantidade de transferências. Quase todas as tecnologias que estamos considerando dão total anonimato - nenhum observador externo pode analisar os saldos, nem os destinatários, nem o histórico de transações. Mas começamos nossa revisão com um dos pioneiros nesse campo para rastrear a evolução das abordagens ao anonimato.
As tecnologias de anonimização disponíveis atualmente podem ser condicionalmente divididas em dois grupos: com base no amassamento - onde as moedas usadas são misturadas com outras moedas do blockchain - e nas tecnologias que usam evidências baseadas em polinômios. A seguir, focaremos em cada um desses grupos e consideraremos seus prós e contras.
Baseado em amassar
Coinjoin
O CoinJoin não anonimiza as traduções do usuário, mas apenas complica o rastreamento. Mas decidimos incluir essa tecnologia em nossa análise, pois foi uma das primeiras tentativas de aumentar o nível de privacidade das transações na rede Bitcoin. Essa tecnologia é cativante por sua simplicidade e não requer alteração das regras de rede, podendo ser usada facilmente em muitas cadeias de blocos.
É baseado em uma idéia simples - e se os usuários dobrarem e efetuarem seus pagamentos em uma única transação? Acontece que se Arnold Schwarzenegger e Barack Obama fizeram um chip e fizeram dois pagamentos a Charlie Sheen e Donald Trump em uma transação, fica mais difícil entender quem financiou a campanha eleitoral de Trump - Arnold ou Barack.
Mas, a partir da principal vantagem do CoinJoin, sua principal desvantagem é a falta de segurança. Até o momento, já existem maneiras de identificar transações CoinJoin na rede e comparar conjuntos de entradas com conjuntos de saídas, comparando as quantidades de moedas gastas e geradas. Uma ferramenta de exemplo para essa análise é o
CoinJoin Sudoku .
Prós:
Simplicidade
Contras:
• Demonstrou a possibilidade de hackers
Monero
A primeira associação que surge com as palavras "criptomoeda anônima" é Monero. Esta moeda
provou sua estabilidade e privacidade sob o microscópio de serviços especiais:

Em um de nossos
artigos recentes
, descrevemos o protocolo Monero em grandes detalhes e hoje resumimos o que foi dito.
No protocolo Monero, cada saída gasta em uma transação é misturada com pelo menos 11 (no momento da redação do artigo) saídas arbitrárias da blockchain, complicando assim o gráfico de transferência na rede e dificultando a tarefa de rastrear transações computacionalmente. As entradas mistas são assinadas com uma assinatura de anel, o que garante que o proprietário de uma das moedas mistas a tenha assinado, mas não possibilita determinar quem exatamente.
Para ocultar os destinatários, cada moeda recém-gerada usa um endereço único, o que torna impossível para o observador (por mais difícil que seja a tarefa de quebrar as chaves de criptografia) associar qualquer saída a um endereço público. E desde setembro de 2017, Monero começou a oferecer suporte ao protocolo de
Transações Confidenciais (CT) com algumas adições, ocultando também o valor das transferências. Um pouco mais tarde, os desenvolvedores de criptomoedas substituíram as assinaturas Borromeanas por Bulletproofs, reduzindo significativamente o tamanho da transação.
Prós:
• Testado pelo tempo
• Simplicidade relativa
Contras:
• A geração e verificação de evidências são mais lentas do que as de ZK-SNARKs e ZK-STARKs
• Não é resistente a rachaduras usando computadores quânticos
Mimblewimble
O Mimblewimble (MW) foi inventado como uma tecnologia escalável para anonimizar transferências na rede Bitcoin, mas encontrou sua implementação como uma blockchain independente. Usado em criptomoedas
Grin e
BEAM .
O MW é digno de nota por não possuir endereços públicos e, para enviar uma transação, os usuários trocam as saídas diretamente, eliminando assim a possibilidade de um observador externo analisar as transferências do destinatário para o destinatário.
Para ocultar as somas de entradas e saídas, é usado um protocolo bastante comum proposto por Greg Maxwell em 2015,
Transações Confidenciais (CT). Ou seja, os valores são criptografados (ou melhor,
o esquema de obrigações é usado) e, em vez disso, a rede opera com as chamadas
obrigações . Para que uma transação seja considerada válida, é necessário igualar as quantidades de moedas gastas e geradas, além de uma comissão. Como a rede não opera diretamente com números, a igualdade é garantida pela equação dessas mesmas obrigações, denominada compromisso com zero.
No CT original, as assinaturas Borromean (assinaturas em anel Borromeo), que ocupavam muito espaço no blockchain (cerca de 6 kilobytes por saída), são usadas para garantir valores não negativos (a chamada prova de intervalo). Nesse sentido, as desvantagens das moedas anônimas que usavam essa tecnologia incluíam um grande tamanho de transação, mas agora eles decidiram abandonar essas assinaturas em favor de uma tecnologia mais compacta - o Bulletproofs.
No próprio bloco MW não há conceito de transação, existem apenas produtos gastos e gerados nele. Nenhuma transação - não há problema!
Para impedir a desanonimização do participante da transferência no estágio de envio de uma transação para a rede, é usado o protocolo
Dandelion , que usa uma cadeia de nós proxy de uma rede de comprimento arbitrário, transferindo a transação entre si antes de sua distribuição real a todos os participantes, confundindo a trajetória da transação que entra na rede.
Prós:
• Tamanho pequeno da blockchain
• Simplicidade relativa
Contras:
• A geração e verificação de evidências são mais lentas do que as de ZK-SNARKs e ZK-STARKs
• É difícil implementar suporte a recursos como scripts e multi-assinaturas
• Não é resistente a rachaduras usando computadores quânticos
Evidências sobre polinômios
ZK-SNARKs
O nome intrincado dessa tecnologia significa "Argumento não interativo sucinto de conhecimento com zero conhecimento", que pode ser traduzido como "Evidência não interativa compactada com divulgação zero". Tornou-se uma continuação do protocolo zerocoin, que evoluiu ainda mais para zerocash e foi implementado pela primeira vez na criptomoeda Zcash.
No caso geral, a prova de zero conhecimento permite que um lado prove o segundo da verdade de uma afirmação matemática sem revelar qualquer informação sobre ela. Em relação às criptomoedas, esses métodos são usados para provar que, por exemplo, uma transação não produz mais moedas do que gasta, sem divulgar a quantidade de transferências.
Os ZK-SNARKs são muito difíceis de entender e será necessário mais de um artigo para descrever os princípios de sua operação. Na página oficial do Zcash, a primeira moeda que implementa este protocolo,
7 artigos são dedicados à descrição de seu trabalho. Portanto, neste capítulo, nos restringimos a uma descrição superficial.
Usando polinômios algébricos, o ZK-SNARKs prova que o remetente possui as moedas que gasta e que a quantidade de moedas gastas não excede a quantidade gerada.
Este protocolo foi criado para reduzir o tamanho da evidência da validade da declaração e, ao mesmo tempo, verificá-la rapidamente. Portanto, de acordo com uma
apresentação de Zooko Wilcox, CEO da Zcash, o tamanho da evidência leva apenas 200 bytes e você pode verificar sua correção em 10 milissegundos. Além disso, na versão mais recente do Zcash, os desenvolvedores conseguiram reduzir o tempo para gerar evidências para cerca de dois segundos.
No entanto, antes de usar essa tecnologia, é necessário um procedimento de configuração complicado por pessoas confiáveis dos "parâmetros públicos", chamado de "cerimônia" (
a cerimônia ). Toda a dificuldade reside no fato de que durante a instalação desses parâmetros nenhuma das partes possui chaves particulares, chamadas de “lixo tóxico”, caso contrário, ela poderá gerar novas moedas. Você pode descobrir como esse procedimento funciona no vídeo no
YouTube .
Prós:
• Evidência de tamanho pequeno
• Verificação rápida
• Geração de evidência relativamente rápida
Contras:
• Procedimento complexo para definir parâmetros públicos
• resíduos tóxicos
• A complexidade relativa da tecnologia
• Não é resistente a rachaduras usando computadores quânticos
ZK-STARKs
Os autores das duas últimas tecnologias conseguem jogar bem com os acrônimos, e o próximo acrônimo significa "Argumentos transparentes escaláveis do conhecimento com zero conhecimento". Este método foi projetado para solucionar as desvantagens atuais dos ZK-SNARKs: a necessidade de configuração confiável de parâmetros públicos, a presença de resíduos tóxicos, a instabilidade da criptografia no cracking usando algoritmos quânticos e a geração de provas insuficientemente rápida. No entanto, os desenvolvedores do ZK-SNARK lidaram com a última desvantagem.
Os ZK-STARKs também usam evidências baseadas em polinômios. A tecnologia não implica o uso de criptografia em chaves públicas, mas sim na teoria do hash e da transferência de informações. A rejeição dessas ferramentas criptográficas torna a tecnologia resistente a algoritmos quânticos. Mas isso tem um preço - as evidências podem chegar a várias centenas de kilobytes.
Agora, o ZK-STARK não possui implementações em nenhuma das criptomoedas, mas existe apenas na forma da biblioteca
libSTARK . No entanto, os desenvolvedores têm planos que vão muito além das blockchains (em seu
White Paper, os autores dão um exemplo com evidência da presença de DNA no banco de dados da polícia). Para esse fim, foi criada a
StarkWare Industries , que no final de 2018 levantou
US $ 36 milhões em investimentos das maiores empresas do setor.
Você pode ler mais sobre como o ZK-STARK está organizado nos posts de Vitalik Buterin (
parte 1 ,
parte 2 ,
parte 3 ).
Prós:
• Resistência ao hacking por computadores quânticos
• Geração de evidência relativamente rápida
• Verificação de prova relativamente rápida
• Sem resíduos tóxicos
Contras:
• A complexidade da tecnologia
• Evidência de tamanho grande
Conclusão
O blockchain e a crescente demanda por anonimato representam novos desafios para a criptografia. Assim, a seção de criptografia que surgiu em meados da década de 1980 - evidência com divulgação zero - foi reabastecida em apenas alguns anos com novos métodos de desenvolvimento dinâmico.
Assim, a fuga do pensamento científico tornou CoinJoin obsoleto e MimbleWimble um recém-chegado promissor, com idéias relativamente novas. Monero sempre permaneceu um gigante inabalável para proteger nossa privacidade. Mas SNARKs e STARKs, embora tenham falhas, podem se tornar líderes no campo. Talvez nos próximos anos, os pontos indicados por nós na coluna "Contras" de cada uma das tecnologias se tornem irrelevantes.