CryptoTimes

Privacidade 3.0 (parte 2): padrões da rede e manutenção de privacidade

01 mar 2020, 11:00 - atualizado em 26 fev 2020, 15:49
“Protocolo de fofoca” é um processo de comunicação entre computadores baseado na forma como vírus são espalhados (Imagem: Freepik)

Este é o segund0 entre três textos que explica as inúmeras ferramentas e abordagens criptográficas para a privacidade no blockchain.

Parte 1

CONTINUA DEPOIS DA PUBLICIDADE

O protocolo de fofoca: entendendo padrões de rede por meio de nós de armadilha

Outra preocupação é a análise metadados de nossas comunicações pessoais (demonstradas de forma infame pelas revelações de Edward Snowden sobre PRISM, o programa de vigilância da NSA, Agência de Segurança Nacional dos EUA).

Em um estudo sobre a anonimidade da rede Bitcoin, pesquisadores coletam dados ao criar falsos nós de armadilha. Na época, o nó era mais conectado do que o site blockchain.com.

O estudo revelou diversos padrões. Às vezes, um computador enviava apenas uma transação — provavelmente insinuando uma associação entre um endereço de IP e um endereço de BTC.

Outro padrão é relacionado às atualizações de software. Supostamente, havia um disparador de transações de um único endereço de IP. A heurística ajudou a mapear mais de mil endereços de IP e de BTC que, na época, representavam cerca de 2% da rede.

Essa pesquisa foi realizada há sete anos — uma eternidade no universo cripto. Quanto mais entropia as transações de blockchain tiverem, mais fácil é ligá-las às identidades.

A rede Ethereum encoraja a reutilização do mesmo endereço para todas as nossas transações (Imagem: Freepik)

A manutenção de carteiras distintas com vários pseudônimos é uma tarefa trabalhosa para nós, humanos. Geralmente, priorizamos o uso de um único endereço para receber pagamentos.

Ethereum segue esse modelo baseado em contas desde o início, nos encorajando a reutilizar o mesmo endereço para todas as nossas transações, ou seja, suas propriedades-padrão de privacidade são piores que a do Bitcoin.

A necessidade por privacidade em blockchains é legítima e vital para cada aplicação descentralizada (dApp), não apenas para serviços bancários e transações financeiras.

Um sistema de votação vai precisar esconder se você votou, quando você votou e em quem você voltou. A instalação de uma cadeia de fornecimento precisa conciliar as relações comerciais entre participantes.

Uma transação de token de padrão ERC-20 deve esconder o valor e os participantes enquanto garante a conservação em massa.

Transações não devem ser interligadas e rastreáveis, e os participantes devem permanecer anônimos (Imagem: Freepik/pikisuperstar)

Esquemas de manutenção de privacidade

Padrões de privacidade dependem da indústria e também das trocas que estamos dispostas a fazer. Para transferências de ativos — criptoativos, tokens ERC-20 —, a privacidade em si significa a confidencialidade de gráficos de transações.

Transações não devem ser interligadas e rastreáveis, e os participantes devem permanecer anônimos. As definições abaixo, do whitepaper da criptomoeda CryptoNote, ajudam a esclarecer os padrões de um esquema de manutenção de privacidade:

– não ligabilidade: para quaisquer duas transações de saída, é impossível provar que foram enviadas para a mesma pessoa;

– não rastreabilidade: para cada transação a caminho, todos os possíveis remetentes são equiprováveis.

O sistema deve certificar que não criemos ativos ou realizemos gastos duplos (Imagem: Freepik/upklyak)

Vamos usar a metáfora do registro. Veríamos linhas aparecendo (débito, crédito, balanço) sem saber de quem está envolvido. Uma forma de saber isso seria através de um serviço de “mixing”.

Ainda assim, a informação dessas “linhas” pode ser ligada a uma fonte de dados fora do blockchain e a proteção de privacidade pode não aguentar. Precisamos de mais. Precisamos ocultar as quantias.

Essa “linha que aparece” não deve informar participantes nem quantias, mas deve conter dados que certifiquem um estado consistente de registro.

O sistema deve certificar que não criemos ativos ou realizemos gastos duplos (“double spend”). Um esquema anônimo de cripto que faça o mesmo que o Zerocash.

Da perspectiva de um blockchain, significa que não armazenamos mais o estado mundial. Armazenamos provas de que o estado mundial é consistente e que as transações de estado são válidas. É de responsabilidade do usuário manter o estado de seu próprio mundo.

É importante destacar que há muito a se fazer em relação à ocultação das quantias de transações: serviços de “mixing”, transações confidenciais, provas de conhecimento-zero. Infelizmente, esses conceitos não generalizam bem para computação arbitrária.