Bem vindo! Novo em Zcash?
The Zcash network is young, but evolving quickly! Sign up and we'll be in touch with monthly highlights on ecosystem growth, network development and how to get started with Zcash!

Idioma

Linkabilidade da transação

Paige Peterson | Jan 25, 2017

Possuir os dois tipos de endereços da Zcash ( transparente e protegido) é uma vantagem que permite aos usuários terem mais flexibilidade em relação ao modo que eles guardam e transacionam ZEC. A dinâmica entre endereços transparentes e protegidos, no entanto, apresenta um nível de complexidade maior para transações que possuem os dois tipos ( p.ex: proteger ZEC enviando-o de uma endereço transparente para um protegido ou desprotegendo ZEC enviando-o de um endereço protegido para um transparente).

Se todas as transações da Zcash usarem endereços protegidos ( o que nós esperamos que algum dia se torne a norma) as complexidades dos dois tipos de endereços desaparecem e a privacidade iria melhorar para todo mundo no ecossistema. Até lá, entender as implicações de privacidade como ligações de transações ajudará os usuários interessados em manter o controle máximo sobre a visibilidade dos detalhes das transações.

Esse post vai tratar sobre algumas considerações de privacidade sobre a Zcash em relação ao seu suporte atual para endereços transparentes e protegidos e algumas soluções que usuários podem utilizar nessas situações.

Onde Zcash introduz linkabilidade?

Endereços transparentes

Sabendo que endereços transparentes revelam detalhes das transações na blockchain da Zcash, podemos assumir um grau de linkabilidade entre a cadeia de transação utilizando esse tipo de endereço, similar à linkabilidade vista nas transações das bitcoins.

Mas o que acontece quando endereços protegidos misturam-se? Felizmente, endereços protegidos na Zcash quebram a linkabilidade quando usados devidamente.

Comparando séries de transações: três endereços transparentes vs endereço protegido prensado entre dois endereços transparentes

Endereços protegidos podem deslinkar endereços transparentes [1]

O simples uso de endereços protegidos por comerciantes aceitando pagamento de ZEC e por seus amigos, provêm um aumento do nível de privacidade para você também! No exemplo acima, a série de transações onde Bob utiliza endereços protegidos (b) quebra o link entre Alice and Carol. Para ajudar a entender essas propriedades, criamos as seguintes transações que simulam os exemplos acima: Alice envia 15 ZEC ( menos taxa) para o Bob transparente e Bob transparente envia 10 ZEC para Carol compare com Alice envia 15 ZEC (menos taxa) para Bob protegido e Bob protegido envia 10 ZEC para Carol.

Então mesmo que você ou seus amigos utilizem endereços transparentes por alguma razão ou outra, outros utilizando endereços protegidos ( quer eles importem ou não) quebram a linkabilidade direta que existe com exclusividade para endereços transparentes.

Linkando Valores

O método acima onde Bob deslinka Alice e Carol simplesmente utilizando endereços protegidos não é 100% confiável para qualquer situação, no entanto.

Para explicar o motivo, vamos primeiro destacar as propriedades de transações que incluem os dois tipos de endereços: quando endereços transparentes protegem ZEC (t → z) ou quando endereços protegidos desprotegem ZEC (z → t), os valores enviados ou recebidos de endereços transparentes são públicos mesmo que esses valores estejam mascarados na parte do endereço protegido na transação. Nós podemos observar a propriedade nas séries de transações acima quando Bob utiliza um endereço protegido mas o endereço transparente utilizado por Alice e Carol ainda revela o valor enviado e recebido.

Um diagrama mostrando o possível valor da linkabilidade em um série de transações mesmo quando um endereço protegido é utilizado entre endereços transparentes

Um endereço protegido pode não proteger contra linkability em alguns casos.

Agora vamos considerar a condição onde Bob envia o balanço total recebido de Alice para Carol e portanto não tem mudança no balanço. Se o balanço público de saída X da Alice e o balanço público de recebimento Y da Carol são iguais ( ou X é igual a Y menos duas taxas padrões de transação) e esse valor é único em relação à outras valores armazenados na blockchain da Zcash, há um grau de associação entre Alice e Carol. Você pode ver isso no exemplo nas seguintes transações: Alice envia 15 ZEC ( menos taxa de 0.0001 da ZEC) para Bob protegido e Bob protegido envia 14.9999 ZEC ( menos taxa de 0.0001 da ZEC) para Carol.

Além do mais, essa associação aumenta o qual perto no blocktime o balanço público de saída de Alice e o balanço público de recebimento de Carol estão gravados. Por exemplo, nas transações acima, Alice envia ZEC para Bob no bloco número 50374 e Bob envia ZEC para Carol no bloco número 50378. Isso torna mais fácil ligar os valores do que se Bob, em vez disso, transacionasse com Carol no bloco número 111583.

Para mitigar isso, Bob deveria ter conhecimento quando desproteger um valor igual a um recebido recentemente de um endereço transparente. As carteiras da Zcash podem considerar implementar um aspecto para permitir detecção de possíveis links entre transações passadas e futuras quando ZEC é desprotegido. [2]

Taxas Únicas De Transação

Outra possibilidade de ligação considerando o uso taxas de transação. A maioria das carterias utilizam uma taxa padrão para pagar mineradores (.0001 ZEC). Em posts passados cobrindo o básico da Anatomia de transação da Zcash, nós mostramos como balanço de taxas são sempre transparentes mesmo com endereços protegidos. Enquanto isso não revela muito para o público se uma taxa padrão é utilizada, endereços que consistentemente pagam taxas únicas poderiam ser ligados.

A solução aqui é simplesmente utilizar taxas de transação.

Reduzindo Linkabilidade Através da Redução da Complexidade

Enquanto as vantagens de fornecer tanto endereços transparentes quanto protegidos para usuários provêm mais opções [3], não há dúvidas de que enviar ZEC entre eles introduz complexidades que afetam a privacidade financeira dos indivíduos. A solução mais completa para evitar linkabilidade de transações é simplesmente utilizar e solicitar que outros utilizem endereços privados, o que em troca fortalece a privacidade da comunidade. O time de desenvolvimento principal da Zcash possui prioridades para apoiar o crescimento do uso de endereços protegidos e pede para serviços terceirizados considerarem modos de tornar endereços protegidos mais fáceis de serem utilizados. Nós estamos apenas no começo desse empolgante novo ecossistema e estamos ansiosos para ver a privacidade fortalecendo-se no decorrer do tempo.

[1]Na série de transação b, nós utilizamos um ponto de interrogação para indicar o valor recebido pelo endereço protegido do Bob mesmo que 14.9999 ZEC fosse exatamente o valor que ele recebeu. Isso porque é possível que um balanço de recebimento/saída protegido fosse incluído, no entanto nós não conseguiríamos vê-lo na blockchain.
[2]Esse valor de linkabilidade é muito mais provável em situações onde usuários estão enviando entre os próprios endereços do que usuários diferentes. No exemplo utilizado, Alice e Bob podem na verdade ser a mesma pessoa enviando entre o seus endereços transparentes e protegidos.
[3]Enquanto endereços protegidos oferecem características privadas que distinguem Zcash da rede de blockchain públicas, os endereços transparentes fornecem ( pelo menos por agora) um alívio em requerimentos de recursos dentre outras funcionalidades familiares de criptomoedas lançadas anteriormente.