Resumo

  • draft-mahy-mls-semiprivatemessage-07 compartilha commits e propostas privados com receptores externos designados, sem transformá-los em PublicMessage.
  • O receptor recupera por HPKE chave, nonce, proteção de reutilização e índice da folha, mas só verifica a assinatura se possuir o GroupContext correspondente.
  • Decriptação, igualdade de conteúdo, estado atual, identidade do remetente, autorização do receptor e efeito são recibos diferentes. A revisão 07 continua provisória e sua análise de segurança está incompleta.

Um serviço de federação encontra sua referência, abre o envelope HPKE e decifra o handshake. O padding confere. framed_content_tbs_hash confirma que membros e serviço receberam o mesmo conteúdo. Mesmo assim, o serviço pode não ter autenticado o remetente.

O SemiPrivateMessage 07 preserva essa diferença. O receptor externo não abre encrypted_sender_data; recebe sender_leaf_index junto do material da mensagem. Esse número localiza uma folha dentro da memória do grupo. Não substitui a credencial e o estado da época guardados no GroupContext.

Semi-private limita exposição, não concede mandato

RFC 9420 oferece formatos público e privado. Em federação, o serviço de distribuição pode precisar ler Commit e Proposal entre domínios sem publicá-los a todos. O rascunho acrescenta external_receivers ao GroupContext e restringe o novo formato a handshakes.

O grupo precisa exigir o formato, as folhas precisam suportá-lo e a lista precisa conter um receptor. Capacidade anunciada, escolha coletiva e processamento real não são o mesmo estado.

Para cada receptor, o remetente usa HPKE para envolver chave, nonce, reuse_guard e índice da folha. Group ID, epoch e um hash do índice com nonce entram no contexto criptográfico. O receptor então abre o ciphertext comum.

Conteúdo igual não prova origem autenticada

framed_content_tbs_hash detecta se o remetente tentar entregar um handshake diferente por fora. É uma garantia de igualdade, não de admissão institucional.

Recibo Prova Não prova
Referência encontrada Há uma entrada compatível Autorização atual
HPKE válido A chave externa abriu o material Identidade MLS do remetente
AEAD válido Ciphertext e AAD estão íntegros Atualidade do GroupContext
Hash igual Ambos receberam o mesmo conteúdo Aplicação do Commit
Assinatura válida O remetente corresponde ao estado usado Direito do serviço de agir
Resultado posterior Um processamento ocorreu Convergência do grupo

Sem contexto, o estado correto é “decifrado, conteúdo vinculado, autenticação pendente”. Ausência de contexto não é assinatura inválida; assinatura válida não é autorização operacional.

O contexto precisa de procedência

Um serviço pode reter a época N ao receber N+1, conservar chave após remoção ou apontar para uma folha cuja credencial mudou. A vinculação criptográfica evita transplante simples, mas não distribui o GroupContext completo nem define retenção.

Registre versão, formato, group ID, epoch, digest e origem do contexto, hora de obtenção, descritor e credencial externos, autoridade de admissão, resultado HPKE, índice, hash de conteúdo, assinatura não executada/aprovada/reprovada, credencial usada, decisão local e resultado.

A lista é visível aos membros. Isso melhora controle, mas deixa perguntas: quem pode adicionar um serviço, por quanto tempo, e como chaves antigas são retiradas? The Policy Mirror exige ator, regra, escopo e consequência quando a lista técnica vira poder delegado.

Não apagar a incerteza

A revisão 07 é Internet-Draft individual. Valores IANA permanecem TBD; o registro MLS não os atribui, e RFC 8126 não certifica implementação. Security Considerations ainda contém TODO More Security. Um piloto não deve ser vendido como análise concluída.

Fontes