![]() |
xilsecure
Vitis Drivers API Documentation
|
LMS OTS Public key structure. More...
LMS OTS Public key structure.
Size = 4 + 16 + 4 + H Len (32) = 56 Bytes
| u8 XSecure_LmsOtsPublicKey_::I[XSECURE_LMS_I_FIELD_SIZE] |
I - Merkle Tree's unique identifier (uniformly random 16-byte string) Size - 16 bytes, 4 to 19 bytes in public key.
| u8 XSecure_LmsOtsPublicKey_::K[XSECURE_LMS_OTS_PUB_KEY_K_FIELD_SIZE] |
K - H(I || u32str(q) || u16str(D_PBLC) || y[0] || ...
|| y[p-1]) H is a hash function, ROM supports only SHA2-256 and SHAKE-256 both are of 32Byte output len I & q remain same as described above D_PBLC is a constant XSECURE_D_PBLC y[0] to y[p-1] is calculated from private key
| u32 XSecure_LmsOtsPublicKey_::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, 20 to 23 bytes in public key
| XSecure_LmsOtsType XSecure_LmsOtsPublicKey_::Type |
Type XSecure_LmsOtsType Size - 4 bytes, 0 to 3 bytes in public key.