Zum Hauptinhalt springen

9.6. Domain Separation (Domänentrennung)

9.6. Domänentrennung

HPKE ermöglicht die Kombination einer DHKEM-Variante DHKEM(Group, KDF') und eines KDF, so dass beide KDFs durch denselben KDF instanziiert werden. Durch Design verwenden die Aufrufe von Extract() und Expand() innerhalb von DHKEM und dem Rest von HPKE separate Eingabedomänen. Dies rechtfertigt die Modellierung als unabhängige Funktionen, auch wenn sie durch denselben KDF instanziiert werden. Diese Domänentrennung zwischen DHKEM und dem Rest von HPKE wird durch Verwendung präfixfreier Mengen von suite_id-Werten in LabeledExtract() und LabeledExpand() erreicht (KEM... in DHKEM und HPKE... im Rest von HPKE). Erinnern Sie sich daran, dass eine Menge präfixfrei ist, wenn kein Element ein Präfix eines anderen innerhalb der Menge ist.

Zukünftige KEM-Instanziierungen MÜSSEN sicherstellen, falls Extract() und Expand() intern verwendet werden, dass sie als Funktionen unabhängig von den Aufrufen von Extract() und Expand() im Rest von HPKE modelliert werden können. Eine Möglichkeit, dies sicherzustellen, besteht darin, LabeledExtract() und LabeledExpand() mit einem suite_id zu verwenden, wie in Abschnitt 4 definiert, was die Trennung der Eingabedomäne sicherstellt, wie oben beschrieben. Besondere Aufmerksamkeit muss gewidmet werden, wenn das KEM direkt Funktionen aufruft, die intern in Extract() oder Expand() von HPKE verwendet werden, wie Hash() und HMAC() im Fall von HKDF. Es MUSS sichergestellt werden, dass Eingaben zu diesen Aufrufen nicht mit Eingaben zu den internen Aufrufen dieser Funktionen innerhalb von Extract() oder Expand() kollidieren können. In KeySchedule() von HPKE wird dies vermieden, indem Extract() anstelle von Hash() für die Eingaben beliebiger Länge info und psk_id verwendet wird.

Das Zeichenfolgenliteral "HPKE-v1", das in LabeledExtract() und LabeledExpand() verwendet wird, stellt sicher, dass alle in HPKE abgeleiteten Geheimnisse an den Namen und die Version des Schemas gebunden sind, auch wenn sie möglicherweise aus demselben Diffie-Hellman- oder KEM-gemeinsamen Geheimnis wie in einem anderen Schema oder einer anderen Version abgeleitet werden.