NIP-104 é um rascunho para mensagens diretas criptografadas de ponta a ponta usando um design de catraca dupla, com o objetivo de trazer sigilo e recuperação pós-comprometimento às conversas do Nostr.

Por que é importante

As soluções Nostr DM existentes têm limitações:

  • NIP-04: criptografa conteúdo, mas vaza metadados
  • NIP-17 + NIP-59: Resolve vazamento de metadados por meio de embrulho para presente, mas não possui sigilo de avanço/retrocesso

O NIP-104 tem como alvo a propriedade ausente: se o estado de um dispositivo ou uma chave de longo prazo for comprometido, o invasor não deverá obter automaticamente o histórico completo da conversa ou acesso permanente a mensagens futuras.

Como funciona

O NIP-104 começa com uma configuração estilo X3DH que combina chaves de identidade e pré-chaves para derivar um segredo compartilhado inicial. Depois disso, cada lado avança uma catraca dupla: uma catraca Diffie-Hellman gira as chaves raiz e da cadeia quando as partes trocam novas chaves públicas, e uma catraca simétrica deriva chaves por mensagem dentro de cada cadeia de envio ou recebimento.

Como cada chave de mensagem tem vida curta, os textos cifrados antigos são mais difíceis de recuperar, mesmo se um estado posterior for exposto. Essa é a principal diferença técnica em relação aos esquemas de chave estática única.

Tipos de eventos

  • Kind 10443: Publica pré-chaves de usuário para inicialização X3DH
  • Kind 443: Configuração inicial de conversa com primeira mensagem criptografada
  • kind 444: Mensagens criptografadas subsequentes em conversas estabelecidas

Todas as mensagens criptografadas são agrupadas em eventos kind 1059 GiftWrap para proteção de metadados.

Segurança e compensações

O ganho de segurança vem com mais estado. Cada emparelhamento de dispositivos precisa de estado de catraca, gerenciamento de pré-chave e lógica de recuperação para entrega fora de ordem. Restaurar um backup antigo ou usar vários dispositivos não sincronizados pode interromper a descriptografia até que a conversa seja restabelecida.

Essa desvantagem é a razão pela qual as mensagens de catraca dupla são mais difíceis de adaptar do que as notas criptografadas comuns. Os clientes precisam de um estado local durável e de uma semântica de dispositivo cuidadosa, não apenas de uma criptografia primitiva.

Notas de interoperabilidade

A proposta utiliza configuração e mensagem dedicadas kinds plus NIP-59: Gift Wrap para privacidade de transporte. Também recomenda publicar esses eventos gift-wrapped apenas para relays listados no evento de preferência kind 10050 DM-relay de um usuário. Isso significa que o NIP-104 não é simplesmente um substituto imediato para NIP-17: Mensagens Diretas Privadas; os clientes precisam de suporte explícito para seu fluxo de pré-chave, descoberta DM-relay e máquina de estado de catraca.


Fontes primárias:

Mencionado em:

Veja também: