Zum Hauptinhalt springen

5.3 Secret Export (Geheimer Export)

5.3 Secret Export (Geheimer Export)

HPKE bietet eine Schnittstelle zum Exportieren von Geheimnissen aus dem Verschlüsselungskontext unter Verwendung einer pseudorandomen Funktion (PRF) mit variabler Länge, ähnlich der TLS 1.3-Exporter-Schnittstelle (siehe [RFC8446], Abschnitt 7.5). Diese Schnittstelle nimmt eine Kontextzeichenfolge exporter_context und eine gewünschte Länge L in Bytes als Eingabe und erzeugt ein Geheimnis, das aus dem internen Exporter-Geheimnis unter Verwendung der entsprechenden KDF-Expand-Funktion abgeleitet wird. Für die in dieser Spezifikation definierten KDFs hat L einen Maximalwert von 255*Nh. Zukünftige Spezifikationen, die neue KDFs definieren, MÜSSEN eine Grenze für L angeben.

Das Feld exporter_context hat eine maximale Länge, die vom KDF selbst, von der Definition von LabeledExpand() und von den konstanten Labels abhängt, die zusammen mit ihnen verwendet werden. Siehe Abschnitt 7.2.1 für genaue Grenzen dieser Länge.

def Context.Export(exporter_context, L):
return LabeledExpand(self.exporter_secret, "sec",
exporter_context, L)

Anwendungen, die die Verschlüsselungs-API in Abschnitt 5.2 nicht verwenden, können die Nur-Export-AEAD-ID 0xFFFF beim Berechnen des Schlüsselplans verwenden. Solche Anwendungen können die Berechnung der key- und base_nonce-Werte im Schlüsselplan vermeiden, da sie von der oben beschriebenen Export-Schnittstelle nicht verwendet werden.