![]() |
xilsecure
Vitis Drivers API Documentation
|
Temporary buffer, used in LMS OTS signature verification, used in hash chain to arrive at values which will be concatenated and hashed to get public value. More...
Temporary buffer, used in LMS OTS signature verification, used in hash chain to arrive at values which will be concatenated and hashed to get public value.
Size = 1 + 16 + 4 + 2 + 1 + H Len (32) = 56 Bytes
| u8 XSecure_LmsOtsHashPerDigit_::I[XSECURE_LMS_I_FIELD_SIZE] |
I - Merkle Tree's unique identifier (uniformly random 16-byte string) Size - 16 bytes, 1 to 16 bytes.
| u16 XSecure_LmsOtsHashPerDigit_::i |
i - Digit position in (Digest || Checksum), 0 to (p-1) digits.
Size - 2 Bytes, 21 to 22 bytes
| u8 XSecure_LmsOtsHashPerDigit_::j |
j - Index for inner loop during signature verification, starts at digit value in (Digest || Checksum) ends at (2^w - 1).
Size - 1 Byte, 23nd byte
| u32 XSecure_LmsOtsHashPerDigit_::q |
q - The leaf number q, goes from 0 on left most leaf to right most (2^h -1), in a single tree Size - 4 bytes, 17 to 20 bytes
| u8 XSecure_LmsOtsHashPerDigit_::Reserved |
1 reserved byte added at start of buffer, to manage word aligned sha finish copies to buffer
| u8 XSecure_LmsOtsHashPerDigit_::y[XSECURE_LMS_OTS_SIGN_VERIF_TMP_BUFF_Y_SIZE] |
y[] - 'n' bytes picked from LMS OTS signatures.
y[0] to y[p-1], each 'n' sized bytes will be copied here and passed into HASH engine along with other fields. Size - 32 Bytes, 24 to 55 bytes