Armazenando Dados em transações Nano

Part2: Pay-to-Fake-Key — Gravando 32 bytes dentro de carteiras Nano

No artigo anterior eu mostrei uma técnica de armazenarmos dados nas casas decimais do saldo de micro-transações Nano, portanto criando mensagens imutáveis a custo baixissimo. No entanto, ainda que para pequenas mensagens possa servir bem, gravar mais do que 13 caracteres (em base100) ou 8 bytes (em base85) pode ser economicamente inviável.

Explicação:

Primeiro vamos entender, resumidamente, como funcionaria a criação de uma carteira normalmente:

Diagrama simples do processo de geração de contas Nano
Exemplificação da codificação da chave pública para o formato da carteira Nano
Nosso processo de armazenamento simplifica, usando uma chave pública inválida, com dados personalizados

Prova de Conceito

Eu conheci esse método graças ao Hamilton que apresentou-o na comunidade Nano Brasil ao gravar todo o whitepaper da Nano em transações da mesma!

Anúncio do Hamilton na Comunidade Nano
Carteiras Nano armazenando whitepaper Nano
Carteiras “decodificadas” de volta para texto, mostrando o whitepaper

Demo online:

Com esta ferramenta web em javascript e html, vocês podem ver funcionando na prática este processo de conversão de texto para carteira Nano e vice-versa: https://anarkrypto.github.io/NanoWalletToText

Aperfeiçoando o método: identificando carteiras com mensagens

Então, se entendeu tudo até aqui e também leu o artigo Armazenando Dados em transações Nano, parte 1”, já sabe:

  1. Como gravar até 32 bytes dentro de carteiras Nano, usando chaves públicas “Fake”.
  1. Armanzenando as flags dentro do saldo da transação para a carteira com a mensagem, da forma que expliquei no artigo anterior (parte1)! Assim, se por exemplo esta carteira recebeu 455139 raws = 0.000000000000000000000000455139 Nano (a flag “MSG” em base100”), podemos identifica-la automaticamente entre milhões de outras transações que não carregam mensagem! Não estaríamos mais gastando apenas 1 raw, mas o valor continuaria ridiculamente baixo.

Construíndo CHATS com este mecanismo

Assim como a técnica explicada na part1, também podemos usar o pay-to-fake-key para criar chats inteiramente armazenados em transações Nano.

Nem o pruning pode apagar estas mensagens

Quem acompanha a Nano pode saber que no node versão 21.0 é esperado a implementação do pruning, que significa “poda”. Trata-se de uma funcionalidade opcional que, ao criar um resumo das transações de cada conta, diminui o tamanho da ledger, poupando, portanto, espaço de armazenamento.

--

--

Desenvolvedor, cripto-entusiasta e criptolibertário

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store