xilsecure
Vitis Drivers API Documentation
XSecure_LmsPublicKey_ Union Reference

LMS Public key structure to access root value. More...

Detailed Description

LMS Public key structure to access root value.

Size = 4 + 4 + 16 + H Len (32) = 56 Bytes

Field Documentation

u8 XSecure_LmsPublicKey_::I[XSECURE_LMS_I_FIELD_SIZE]

I - Merkle Tree's unique identifier (uniformly random 16-byte string) Size - 16 bytes, 8 to 23 bytes in public key.

Referenced by XSecure_HssInit().

XSecure_LmsType XSecure_LmsPublicKey_::LmsType

LmsType XSecure_LmsType Size - 4 bytes, 0 to 3 in public key.

XSecure_LmsOtsType XSecure_LmsPublicKey_::OtsType

OtsType XSecure_LmsOtsType Size - 4 bytes, 4 to 7 bytes in public key.

u8 XSecure_LmsPublicKey_::T[XSECURE_LMS_PUB_KEY_T_FIELD_SIZE]

T[1] - H(I||u32str(r)||u16str(D_INTR)||T[2*r]||T[2*r+1])

'H' is a hash function, PLM supports only SHA2-256 and SHAKE-256 both are of 32Byte output len

'r' is the node number, same as 'q', goes from 0 on left most leaf to right most (2^h -1), in a single tree D_INTR is a constant XSECURE_D_INTR