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

Campo Memo Criptografado

Zooko Wilcox & Paige Peterson | Dec 05, 2016

A partir de 28 de outubro de 2016, a Zcash se tornou realidade! Qualquer pessoa com acesso à internet pode fazer o download do software, conectar-se à rede descentralizada global e enviar ou receber pagamentos sem expor ao mundo seus metadados de transações confidenciais.

Nota: nós ainda não desenvolvemos uma carteira intuitiva. O software que estamos distribuindo destina-se apenas a usuários de Linux que fazem uso da linha de comando. Felizmente, diversos indivíduos e empresas já se dispuseram a fornecer interfaces gráficas de usuário.

Este post fala sobre o pouco conhecido, mas potencialmente valioso, recurso deste novo protocolo.

Campo Memo Criptografado

Ao receber um pagamento em Zcash no seu endereço protegido a partir do endereço protegido de outra pessoa, você consegue visualizar a quantidade recebida de Zcash, bem como o ID da transação, o que lhe permite identificar essa transação no blockchain (na sua forma criptografada).

Além de não saber nada sobre o remetente ou a respeito da história do dinheiro recebido, você não visualizará o endereço desse remetente. Isso é padrão — o remetente deve conseguir lhe enviar dinheiro sem necessariamente revelar outras informações pessoais.

Contudo, percebemos que os remetentes ocasionalmente precisam transmitir informações sobre pagamentos específicos. Por exemplo: o número de uma fatura ou conta à qual o pagamento é destinado, um endereço para o envio de reembolsos, uma mensagem para o destinatário, etc.

Portanto, implementamos um campo adicional que permanece visível ao destinatário do pagamento, chamado de "campo memo criptografado". Ele está incluso em todo pagamento criptografado e sempre possui exatamente 512 bytes de extensão. Se o remetente não especificar nada, o memo enviado incluirá apenas zeros (antes da criptografia). Caso o remetente inclua um memo menor que 512 bytes, o espaço restante será preenchido com zeros (antes da criptografia).

Este preenchimento é necessário para fins de privacidade, de modo que um observador que esteja analisando o blockchain não consiga detectar diferenças entre diferentes padrões de uso dos memos criptografados. Isso também significa que você não pagará taxas de transação maiores para incluir memos — esse custo já está incluso.

O memo criptografado fica visível somente ao destinatário, a menos que a chave de visualização da transação seja compartilhada (pelo remetente ou pelo destinatário) com terceiros. Nesse caso, o indivíduo que recebeu a chave de visualização seria capaz de conferir o memo, além do valor e do endereço do destinatário da transação, no blockchain. As chaves de visualização da transação já estão presentes no protocolo, mas ainda não são suportadas na API.

O Que As Pessoas Vão Fazer Com Isso

um campo memo. Lembra-se deles?

Nós idealizamos o campo memo criptografado basicamente da mesma forma como o espaço para observações na parte inferior dos antigos cheques em papel, mas ultimamente estamos nos perguntando: para o que mais as pessoas usarão isso?

Zcash é o primeiro sistema que combina a propriedade append-only dos blockchains com a propriedade divulgação seletiva de criptografia. Usando o campo memo, você pode inserir dados arbitrários (desde que caibam em 512 bytes) no blockchain global e descentralizado da Zcash, e seus dados se tornarão parte do registro imutável e append-only, mas eles não serão visíveis por mais ninguém — ainda. Se você posteriormente divulgar a chave de visualização da transação a outra pessoa, os dados se tornarão visíveis para ela no blockchain. Caso divulgue a chave de visualização da transação publicamente, os dados ficarão visíveis ao público, mas ainda permanecerão embutidos em seu local original no blockchain.

Esse recurso pode ser útil para mensagens privadas? Marcação de data e hora? Documentos públicos, como registros de títulos de propriedade? Armazenamento e compartilhamento seguro de dados confidenciais, como registros de saúde ou registros comerciais?

Eu realmente não sei se o campo memo criptografado seria apropriado e eficaz para esses fins, mas, a partir de agora, o recurso está disponível, e nada pode impedir que você o experimente. Caso realmente o faça, por favor, conte-me o que você descobriu!

Endereços de Retorno

Um dos usos mais óbvios para um campo memo criptografado incluso em um pagamento com ZEC entre endereços protegidos é a indicação de um endereço de retorno ou de reembolso. Os comerciantes podem pedir aos seus clientes que incluam um endereço de reembolso junto ao pagamento, caso um produto precise ser devolvido ou um serviço tenha que ser cancelado com antecedência. Como não é obrigatório que o memo inclua o endereço a partir do qual o pagamento foi enviado, este recurso pode até mesmo ser usado como um recibo de presente criptograficamente protegido. Se alguém compra um presente de aniversário para sua irmã com algum comerciante, essa pessoa pode incluir o endereço de pagamento protegido de sua irmã no campo memo e compartilhar com ela o ID da transação que contém os dados criptografados dessa transação. Ela não saberá qual foi o valor da pulseira, mas, caso ache que o produto não esteja no tamanho certo, poderá devolvê-lo ao comerciante através do ID da transação, o qual pode ser associado ao produto pelo vendedor, que iniciará o processo de reembolso ao endereço fornecido no campo memo.

A Regra de Viagem

Outro uso específico que tínhamos em mente era satisfazer A Regra de Viagem. A regra de viagem é um regulamento da FinCEN que estabelece que, quando uma instituição financeira envia uma transação para outra, a instituição remetente é obrigada a incluir as informações de identificação do cliente em nome do qual está efetuando o pagamento. O nome "regra de viagem" foi definido porque as informações de identificação devem viajar junto com o pagamento, em vez de apenas ser entregues independentemente ou mantidas em um banco de dados. As instituições financeiras que usam Bitcoin (por exemplo: empresas de câmbio como Kraken e Poloniex) enfrentam dificuldades para cumprir esse regulamento, pois realmente não é possível incluir as informações pessoais dos seus clientes em um blockchain globalmente transparente!

Com a Zcash, uma instituição financeira pode satisfazer essa regra ao inserir as informações pessoais do cliente no memo criptografado. Isso o torna visível para a instituição financeira destinatária, mas não para terceiros não autorizados.

Notas de Amor no Blockchain

Recentemente, uma jovem me disse que havia recebido uma transação de Zcash criptografada e que, no campo memo, encontrou um hash de árvore de Merkle que apontou para um arquivo no sistema de arquivos distribuídos IPFS . Ao acessar o link, ela descobriu que o arquivo era um ingresso para um evento especial no exterior, o qual ela e seu namorado distante estavam conversando sobre participar juntos.

O memo era uma nota de amor. Uma nota de amor permanentemente embutida em algum lugar nos primeiros blocos do blockchain da Zcash, mas visível apenas por duas pessoas. Acho isso lindo.

zmsg

Confira aqui um programa simples para inserir memos no campo memo criptografado e para lê-los novamente (se você for o destinatário da transação inclusa): zmsg

Infinitas possibilidades

Embora os exemplos relacionados neste post destacam algumas das formas mais interessantes pelas quais usuários, desenvolvedores e comerciantes podem usar o campo memo criptografado em pagamentos de Zcash, eles são apenas o começo. Incentivamos todas as pessoas a experimentar este recurso e as ferramentas construídas em torno dele. Você pode compartilhar suas descobertas e dicas bacanas em nossa comunidade online.