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

Anatomia de Uma Transação Zcash

Paige Peterson | Nov 23, 2016

Desde o lançamento bem-sucedido da rede Zcash no dia 28 de Outubro, tivemos um grande interesse de mineradores e usuários que querem aproveitar as propriedades de confidencialidade e privacidade habilitadas pelo protocolo. Ao enviar ou receber ZEC, a escolha adicional de usar endereços blindados ou transparentes é um fator importante para esses usuários. E entender como essas duas opções são usadas em uma transação é o melhor forma para se começar a fazer as escolhas certas.

A Construção de Blocos de Uma Transação

A construção de blocos de uma transação Zcash podem ser divididos em endereços de envio e recebimento, saldos de contas e taxas de transação. Os componentes mais complexos da transação são explorados em nossa especificação de protocolo, por isso vamos evitar esses conceitos por enquanto. Para enviar endereços blindados, um componente adicional "memo field" está disponível, mas isso será um tópico para um post futuro.

Um diagrama de alto nível do esqueleto de uma transação da Zcash

Uma visualização em alto nível de uma transação da Zcash

O diagrama acima mostra o processo de envio e recebimento da ZEC como parte de uma transação. O uso de endereços blindados - enviando ou recebendo - requer a geração de uma prova de conhecimento-nulo que permite que outros verifiquem os dados criptografados de uma transação sem que ele seja revelado. (Mais detalhes sobre como isso funciona serão discutidos em um próximo post, assim como o funcionamento interno de transações entre endereços blindados.) Esses endereços sempre começam com um "z" e às vezes são chamados de "z-addrs". Da mesma forma, o uso de endereços transparentes requer interação com o que é conhecido como "Transparent Value Pool" (ou TVP) e revela publicamente dados de transações. Esses endereços sempre começam com um "t" e às vezes são chamados de "t-addrs". A taxa de transação também passa pelo TVP e, portanto, é sempre visível no blockchain. Mesmo que as taxas sejam sempre reveladas em uma transação, os endereços blindados e o valor não são, como mostrado em uma transação real da Zcash a seguir.

Captura de tela do Zchain block explorer mostrando o envio de ZEC entre endereços blindados

Captura de tela do Explorador de Blocos Zchain, de uma transação entre endereços blindados

Alteração de Endereços

Como em outros protocolos blockchain, o gasto do saldo em um endereço requer o envio de todo o saldo. Portanto, a menos que você queira enviar o saldo exato para outra parte, você deve dividir o saldo, incluindo um segundo endereço de recebimento que você controla para aceitar qualquer alteração de saldo. É possível usar simplesmente o endereço de envio como o endereço de mudança para evitar o gerenciamento adicional de vários endereços. Isso, no entanto, normalmente não é recomendado, uma vez que seria trivial para alguém construir um perfil de identidade baseado em transações enviadas a partir desse único endereço público. A criação de um novo endereço para cada transação tornou-se prática padrão recomendada para ofuscar as transações de um usuário. Desde que as transações públicas liguem o envio e o recebimento de endereços, no entanto, esse nível de ofuscação ainda é bastante trivial para navegar e não fornece um nível significativo de privacidade.

Felizmente, ao enviar uma ZEC a partir de um endereço blindado, onde os dados são mantidos privados como também o envio de volta para o endereço de envio é permitido. Na Zcash, todas as transações entre endereços blindados são idênticas, de modo que a reutilização de endereços blindados não é vulnerável da mesma forma que os endereços transparentes.

Envio Entre Endereços Blindados e Transparentes

Um diagrama mostrando as diferenças de enviar ZEC de e para endereços blindados e transparentes

Propriedades de envio de uma ZEC entre endereços blindados e transparentes

Na Zcash, ZEC é a unidade de saldo para quanto valor um endereço contém. Difere das moedas correntes puramente públicas do blockchain em que um balanço da ZEC tem um jogo diferente das propriedades dependendo do tipo de endereço(s) está preso atualmente dentro e no endereço precedente de que foi emitido. Se ZEC é mantido em um endereço transparente, seu saldo não utilizado é publicamente visível. Independentemente se esse saldo seja enviado para um ou mais endereços transparentes, endereços blindados ou uma combinação destes tipos, o ZEC de saída a partir de um endereço transparente será visível. Um benefício de enviar ZEC transparente para um endereço blindado está quebrando o linkability entre futuros endereços transparentes se isso é onde ele acaba novamente. A ação de proteger o ZEC é particularmente importante nesses estágios iniciais, onde muitas wallets (ou wallets móveis) podem ainda não suportar endereços blindados devido aos requisitos de recursos como explicado em um post anterior do blog sobre as expectativas do usuário para limitações de hardware e software

Captura de tela do Explorador de Blocos Zchain mostrando o envio de uma ZEC entre um endereço transparente e um endereço blindado

Captura de tela do Explorador de Blocos Zchain de uma transação blindada ZEC

Na transação acima, onde um endereço transparente envia para um endereço blindado, você pode ver que este processo de blindagem ZEC revela o saldo enviado e é mantido por endereços blindados. Os endereços blindados envolvidos e se foi enviado para um ou dois endereços blindados permanece confidencial.

Para contrastar, um saldo ZEC em um endereço blindado mantém o saldo e o endereço das contas privadas. Se enviar para um ou mais endereços blindados, o valor permanece privado, mas quaisquer endereços transparentes na extremidade receptora será desblindado e o ZEC irá revelar o valor recebido no blockchain. Ao desblindar ZEC, os endereços blindados de entrada e se o valor foi enviado de um ou dois destes endereços permanecerão confidencial.

Notas Adicionais sobre Transações Mais Complexas e Implicações de Privacidade

Devemos notar que esses exemplos que não detalham as propriedades de transações mais complexas onde os endereços, tanto transparentes quanto blindados estão enviando ou recebendo. Com esta visão geral sobre as propriedades básicas dos endereços e os saldos da ZEC, os usuários podem esperançosamente ganhar uma perspectiva melhor de como as transações trabalham ao negociar entre qualquer um destes dois tipos de endereços. Espere post futuros sobre o funcionamento interno dos endereços blindados, considerações adicionais sobre a vinculabilidade e implicações de privacidade e detalhes sobre as transações mais complexas. Estamos ansiosos para promover endereços blindados para melhorar as estatísticas de seu uso. Enquanto as transações envolvendo endereços blindados exigem mais recursos do que aqueles com endereços estritamente transparentes, a privacidade aprimorada proporcionada ao usá-los é um claro benefício para a liberdade financeira e é a principal melhoria que a Zcash traz como uma criptomoeda.