@nodedescription GOST R 34.10+HKDF KEM
@subsubsection GOST R 34.10+HKDF KEM
-@verbatiminclude ../tcl/schemas/kem-gost3410-hkdf-kexp15.tcl
+@verbatiminclude ../tcl/schemas/kem-gost3410-hkdf.tcl
GOST R 34.10-2012 VKO parameter set A/C ("gost3410-256A", "gost3410-512C")
must be used for DH operation, with UKM taken from the structure. VKO's
-output is 512- or 1024-bit @code{BE(X)||BE(Y)} point. It is used in HKDF
-and KExp15 (Р 1323565.1.017) key wrapping algorithm:
+output is 512- or 1024-bit @code{BE(X)||BE(Y)} point, used in HKDF below:
@verbatim
PRK = HKDF-Extract(Streebog-512, salt="", ikm=VKO(..., ukm=UKM))
-KEK= HKDF-Expand(Streebog-512, prk=PRK, info="cm/encrypted/gost3410-hkdf" || /id)
+KEK = HKDF-Expand(Streebog-512, prk=PRK, info="cm/encrypted/gost3410-hkdf" || /id)
@end verbatim
@code{/kem/*/cek} is wrapped with @ref{keywrap-kexp15} mechanism.
schema-include fpr.tcl
schema-include kem-with-encap.tcl
-schema-include kem-gost3410-hkdf-kexp15.tcl
+schema-include kem-gost3410-hkdf.tcl
schema-include kem-balloon-blake2b-hkdf.tcl
schema-include kem-pbkdf2.tcl
-kem-gost3410-hkdf-kexp15 {
- {field a {str} =gost3410-hkdf-kexp15}
+kem-gost3410-hkdf {
+ {field a {str} =gost3410-hkdf}
{field cek {bin} >0} {# wrapped CEK}
{field ukm {bin} len=16} {# additional keying material}
{field pub {bin} >0} {# sender's ephemeral public key}