2.2.2 FFC DH Parameters

This structure specifies field parameters for use in deriving finite field cryptography (FFC) Diffie-Hellman (DH) ([SP800-56A] section 5.7.1) keys, as specified in section 3.1.4.1.2.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

Length

0x44

0x48

0x50

0x4D

Key length

Field order (variable)

...

...

Generator (variable)

...

...

Length (4 bytes):  A 32-bit unsigned integer. This field MUST be the length, in bytes, of the entire structure. This field is encoded using little-endian format.

Key length (4 bytes): A 32-bit unsigned integer. This field MUST be the length, in bytes, of the public key. This field is encoded using little-endian format.

Field order (variable): This is the large prime field order, and is a domain parameter for the FFC DH algorithm ([SP800-56A] section 5.7.1). This field parameter is referred to as p in [SP800-56A] section 3.2. It MUST be encoded in big-endian format. The length of this field, in bytes, MUST be equal to the value of the Key length field.

Generator (variable): The generator of the subgroup, a domain parameter for the FFC DH algorithm ([SP800-56A] section 5.7.1). This field parameter is referred to as g in [SP800-56A] section 3.2. It MUST be encoded in big-endian format. The length of this field, in bytes, MUST be equal to the value of the Key length field.