Share via


2.2.3.1 FFC DH Key

The following specifies the format and field descriptions for the FFC DH Key structure.


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

0x44

0x48

0x50

0x42

Key length

Field order (variable)

...

...

Generator (variable)

...

...

Public key (variable)

...

...

Key length (4 bytes): A 32-bit unsigned integer. The value in this field MUST be equal to the length, in bytes, of the Public key field. This parameter 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 in 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 in the Key length field.

Public key (variable): The public key for the FFC DH algorithm ([SP800-56A] section 5.7.1). This field parameter is referred to as y 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.