Todos os posts

9 min de leitura

O que a CardanoWall enxerga (e o que ela não enxerga)

A CardanoWall enxerga dados de conta, cobrança e provas públicas. Por design, ela não enxerga sua Identity Seed em texto claro, suas chaves privadas nem o texto claro de um arquivo selado.

A CardanoWall enxerga dados comuns de serviço e os registros públicos de prova que você publica. Por design, ela não enxerga sua Identity Seed em texto claro, suas chaves privadas nem o texto claro de um arquivo que você sela. O material mais sensível fica armazenado e é usado no seu dispositivo, não nos nossos servidores.

Essa é a versão honesta do modelo de privacidade. A CardanoWall é um produto hospedado, construído sobre um gateway, então ela genuinamente precisa de dados de conta, cobrança, publicação e indexação para funcionar. A pergunta interessante não é "a CardanoWall enxerga alguma coisa?" — ela enxerga. A pergunta interessante é que tipo de dado ela enxerga, e o que permanece cifrado para nós.

Este artigo percorre essa linha, categoria por categoria.

Que dados de conta a CardanoWall armazena?

Dados normais de um serviço hospedado. Dependendo de como você usa o produto, isso pode incluir:

  • seu identificador de conta;
  • identificadores de login, como um endereço de e-mail ou a referência de uma conta OAuth vinculada;
  • registros de cobrança e seu saldo pré-pago;
  • metadados de chaves de API e a forma com hash das chaves de API (nunca a chave em texto claro);
  • referências de processadores de pagamento para recargas;
  • configurações no nível da conta;
  • carimbos de tempo das ações da conta;
  • metadados de suporte e operacionais;
  • logs de limite de taxa e de segurança.

Esse é o mesmo formato de dado que qualquer serviço baseado em conta mantém. Nada disso é sua Identity Seed.

Que dados de identidade ela consegue enxergar?

Chaves públicas de identidade — e nada privado.

Na CardanoWall, uma identidade é derivada deterministicamente de uma única Identity Seed de 32 bytes, e as chaves públicas dessa identidade são o que o serviço precisa para cumprir seu papel: listar sua identidade, contar suas provas assinadas, vincular uma identidade à sua conta após uma verificação de posse e exibir um perfil público quando você escolhe publicar um.

Então o serviço consegue enxergar dados públicos de identidade, como:

  • a chave pública de assinatura Ed25519;
  • a chave pública de recebimento X25519;
  • a chave pública opcional de recebimento híbrida pós-quântica;
  • o horário de criação da identidade no banco de dados do serviço;
  • o estado de vínculo entre uma conta e uma identidade;
  • quaisquer campos de perfil público que você ative.

Esses são fatos públicos ou de nível de serviço. Eles não são a chave privada de assinatura nem a chave privada de recebimento, e não podem ser revertidos à sua semente.

O que o servidor nunca precisa enxergar?

Qualquer coisa que lhe permitisse agir como você. O servidor não precisa, e foi construído para não manter em forma utilizável:

  • Identity Seeds em texto claro;
  • chaves privadas de assinatura Ed25519;
  • chaves privadas de recebimento X25519;
  • segredos de recebimento híbridos (pós-quânticos);
  • o material de desbloqueio que sua passkey produz;
  • o conteúdo decifrado do seu cofre de identidade;
  • o texto claro decifrado de um arquivo selado.

Tudo isso vive no seu dispositivo depois que você desbloqueia, ou em backups que você controla. A cópia portátil e canônica de uma identidade é sua semente — esse único artefato, e não a camada de conveniência hospedada, é o backup de verdade.

O que o cofre cifrado revela ao servidor?

Que ele existe — e pouco mais.

Para permitir que você desbloqueie em um novo dispositivo com uma passkey, a CardanoWall armazena uma linha de cofre cifrado atual por conta. O servidor consegue ler os metadados da linha — quando ela foi atualizada pela última vez, seu número de versão e quais credenciais de passkey registradas estão associadas a ela — porque precisa deles para a experiência de desbloqueio e a gestão do ciclo de vida.

O que o servidor não consegue fazer é decifrar o cofre. O cofre é um único texto cifrado no estilo age, endereçado exclusivamente aos seus fatores de desbloqueio por passkey WebAuthn (stanzas PRF). Não há, deliberadamente, nenhum caminho de desbloqueio derivado de senha nem nenhum destinatário de chave pública adicionado a ele, de modo que o texto cifrado armazenado não expõe nada que o servidor pudesse quebrar offline. Isto é uma conveniência da camada de serviço, não custódia: nós guardamos a caixa trancada, suas passkeys guardam as únicas chaves.

O texto claro do cofre contém suas Identity Seeds e seus rótulos de exibição privados — exatamente o material que jamais pode ser legível pelo servidor. O mesmo design também rege a revogação: remover uma passkey recifra o cofre para seus fatores restantes e exclui em definitivo o texto cifrado anterior, de modo que o autenticador removido não consegue mais abrir o cofre atual. Isso é revogação de verdade para o estado atual, embora não seja retroativa — uma cópia que um atacante já tenha exfiltrado e ainda consiga abrir é um problema à parte. Como as passkeys protegem seu cofre de identidade aprofunda esse ponto.

Que dados de prova são públicos?

A própria prova. Os registros Label 309 são publicados na Cardano justamente para que qualquer pessoa com a referência da transação consiga verificá-los. Dependendo do registro, os dados públicos podem incluir:

  • hashes do conteúdo;
  • a referência da transação;
  • o horário de bloco que a cadeia atribui;
  • a estrutura do registro;
  • assinaturas e chaves públicas dos signatários, quando o autor escolheu assinar;
  • raízes Merkle, para registros agrupados;
  • metadados do envelope cifrado;
  • URIs de armazenamento endereçado por conteúdo (ar://, ipfs://);
  • o número de compartimentos de destinatário cifrados;
  • a família de troca de chaves usada em um registro selado.

Esses dados são públicos de propósito: é o que torna uma prova verificável sem confiar na CardanoWall. Para um registro selado, note o que não está ali — o texto claro do arquivo nunca vai para a cadeia. Um observador consegue ver que um registro está selado, quantos compartimentos de destinatário ele tem e qual família de troca de chaves ele usa, mas não quem são os destinatários nem o conteúdo.

O que os gateways de armazenamento conseguem enxergar?

Os bytes armazenados e os metadados das requisições.

Se um registro aponta para um conteúdo na Arweave ou no IPFS, os gateways públicos que servem esses bytes conseguem ver as requisições por eles. Para um arquivo público, esses bytes são texto claro. Para um arquivo selado, esses bytes são texto cifrado, e devem permanecer ilegíveis sem a chave privada do destinatário.

Os gateways também conseguem observar timing, tamanho do objeto e padrões de requisição. Eles não são um lugar para depositar confiança em termos de confidencialidade. É exatamente por isso que se deve selar um arquivo sensível antes de ele ir para o armazenamento, em vez de contar com a camada de armazenamento para mantê-lo privado.

O que o navegador consegue enxergar enquanto você está desbloqueado?

Tudo o que ele precisa para agir como sua identidade — pelo tempo em que a sessão estiver desbloqueada.

Depois que você desbloqueia, suas Identity Seeds e as chaves privadas derivadas delas vivem na memória de sessão do seu navegador para que o app possa assinar e decifrar. Quando você decifra um arquivo selado, o texto claro também fica no navegador. Ao bloquear ou sair, esse material em memória é apagado na medida do possível.

Isto é privacidade no cliente, e ela é honesta quanto aos seus limites. Manter os segredos no seu dispositivo protege você da custódia pelo servidor, mas significa que seu dispositivo e o ambiente do navegador importam. Uma extensão de navegador maliciosa, um software local hostil ou uma falha ativa de cross-site scripting durante uma sessão desbloqueada podem ler o que está na memória. Cabeçalhos estritos de content-security, um fluxo de desbloqueio com o mínimo de scripts e desbloquear apenas sob uma ação explícita reduzem essa exposição — mas não conseguem eliminá-la. Para identidades sensíveis, use um dispositivo em que você confie; armazenamento no navegador e chaves de sessão explica exatamente o que é e o que não é guardado em cache.

O que a agenda de contatos pode revelar?

Sua lista de contatos é dado de serviço, e pode ser sensível à sua maneira.

Os contatos confiáveis são entradas locais da conta que poupam você de colar chaves públicas longas toda vez que sela um arquivo para alguém. Uma entrada pode conter um nome de exibição, uma chave pública de assinatura, endereços de recebimento opcionais (clássico e pós-quântico), como e quando você verificou o contato, e notas em formato livre.

Esses não são Identity Seeds, mas uma lista de com quem você se corresponde pode revelar relacionamentos e fluxos de trabalho. O registro de logs da CardanoWall é escrito para manter isso discreto: as ações no lado do servidor que criam e editam contatos registram apenas um identificador de requisição e seu identificador de conta — nunca o nome, as chaves, as notas ou o método de verificação do contato.

O que a CardanoWall não promete?

Ela não promete invisibilidade.

A CardanoWall não é uma rede de anonimato. A blockchain, os gateways de armazenamento, o sistema de pagamentos, o login da sua conta, seu navegador e seu caminho de rede podem todos expor metadados. Publicar um registro selado não assinado mantém o remetente, os destinatários e o texto claro fora do próprio registro Label 309 — mas isso é privacidade no nível do registro, não anonimato completo. O endereço Cardano que paga a taxa, seu IP como visto pelos gateways e sinais semelhantes vivem fora do registro e fora desta garantia.

Ela também não torna seguro um dispositivo comprometido. Se a sua sessão desbloqueada estiver rodando código malicioso, esse código consegue ver o que você vê.

E uma prova publicada é pública por design. Ela mostra que bytes específicos existiam até um horário público específico. Ela não prova, por si só, quem os criou, quem é o dono nem que o conteúdo é verdadeiro — veja o que uma prova não prova para conhecer esse limite.

A versão curta

A CardanoWall enxerga dados de serviço e dados de prova públicos. Por design, ela não enxerga sua Identity Seed em texto claro, suas chaves privadas, o texto claro do seu cofre nem o texto claro de um arquivo selado.

Então, na prática: sele os arquivos sensíveis antes que eles saiam do seu dispositivo, mantenha uma cópia segura da sua semente, desbloqueie em dispositivos em que você confie e trate tudo o que você publica na cadeia como permanentemente público.

Uma boa privacidade começa por saber exatamente onde cada tipo de dado vive — e a CardanoWall foi construída para que o dado que mais importa viva com você.

Leitura adicional

A CardanoWall é a implementação de referência do Label 309, um padrão de Proof of Existence aberto e neutro quanto ao fornecedor. O padrão foi submetido ao processo de CIP da Cardano e está sob revisão pelos editores de CIP como uma proposta da categoria Metadata (PR aberto). O núcleo criptográfico, os SDKs e as ferramentas de linha de comando são código aberto em github.com/cardanowall, para que você possa auditar exatamente o que é computado no seu dispositivo em vez de acreditar na nossa palavra.

securityprivacyidentity