5.3 Secret Export (Exportation de secrets)
5.3 Secret Export (Exportation de secrets)
HPKE fournit une interface pour exporter des secrets depuis le contexte de chiffrement en utilisant une fonction pseudoaléatoire à longueur variable (PRF), similaire à l'interface d'exportation TLS 1.3 (voir [RFC8446], Section 7.5). Cette interface prend en entrée une chaîne de contexte exporter_context et une longueur souhaitée L en octets, et produit un secret dérivé du secret d'exportation interne en utilisant la fonction KDF Expand correspondante. Pour les KDF définis dans cette spécification, L a une valeur maximale de 255*Nh. Les spécifications futures qui définissent de nouveaux KDF DOIVENT spécifier une limite pour L.
Le champ exporter_context a une longueur maximale qui dépend du KDF lui-même, de la définition de LabeledExpand(), et des étiquettes constantes utilisées avec eux. Voir la Section 7.2.1 pour les limites précises sur cette longueur.
def Context.Export(exporter_context, L):
return LabeledExpand(self.exporter_secret, "sec",
exporter_context, L)
Les applications qui n'utilisent pas l'API de chiffrement de la Section 5.2 peuvent utiliser l'ID AEAD réservé à l'exportation uniquement 0xFFFF lors du calcul de la planification de clés. De telles applications peuvent éviter de calculer les valeurs key et base_nonce dans la planification de clés, car elles ne sont pas utilisées par l'interface Export décrite ci-dessus.