xilsecure
Vitis Drivers API Documentation
Data Structures
Here are the data structures with brief descriptions:
oC__attribute__Used to parse HSS public key fields
oCEcdsaCrvInfo< The structure below matches the more private structures of binary_curve and prime_curve in the SDK
oCXSecure_AesDataBlockParamsStructure for input parameters for AES Encryption and Decryption of single block of data
oCXSecure_AesDmaCfgThis structure contains parameters to configure DMA for AES
oCXSecure_AesInitOpsStructure for input parameters for Initialisation of AES Encryption and Decryption
oCXSecure_AesInParamsStructure for input parameters for AES Encryption and Decryption
oCXSecure_EcdhParamsStructure for input parameters for ECDH
oCXSecure_ElliptcPrivateKeyGenEcc private key generation parameters
oCXSecure_EllipticHashDataStructure for input parameters Hash and Length for Elliptic Sign generation
oCXSecure_EllipticKeyStructure for pointers of public key curve points
oCXSecure_EllipticKeyAddrStructure for addresses of public key curve points
oCXSecure_EllipticSignStructure for pointers of signature components
oCXSecure_EllipticSignAddrStructure for addresses of signature components
oCXSecure_EllipticSignGenParamsStructure for input parameters for Ellitic Sign generation
oCXSecure_EllipticSignVerifyParamsStructure for input parameters for Ellitic Sign Verification
oCXSecure_HashAlgInfoStructure for Hash Algorithm Info
oCXSecure_KeyMetaDataAES Key metadata for Key wrap unwrap
oCXSecure_KeyWrapDataInput and output parameters for Key wrap
oCXSecure_LmsDataDigest_Digest for message to be authenticated, along with checksum
oCXSecure_LmsDataDigestFixedFields_Temporary buffer, used to send prefix fields to calculate digest for data to be authenticate
oCXSecure_LmsHssSignatureUsed to parse HSS Signature list
oCXSecure_LmsOtsHashPerDigit_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
oCXSecure_LmsOtsPublicKey_LMS OTS Public key structure
oCXSecure_LmsOtsSignature_Partial LMS OTS Signature structure
oCXSecure_LmsOtsSignToPubKeyHash_Structure used when validating LMS OTS, once hash chain is completed, result needs to be stored so that they can be further concatenated and hashed to get OTS public key, this provides a way to access members and fill data in a structured way
oCXSecure_LmsParamStructure for maintaining parameters for each LMS Type
oCXSecure_LmsPubKeyTmp_Used to store data which is repeatedly sent to SHA engine, during LMS root value calculation
oCXSecure_LmsPublicKey_LMS Public key structure to access root value
oCXSecure_MgfInputStructure has input and output parameters used for MGF
oCXSecure_PartitionHeaderStructure to store the partition header details
oCXSecure_RsaThe RSA driver instance data structure
oCXSecure_RsaInParamStructure for input parameters for RSA Encryption and Decryption
oCXSecure_RsaKeyInput parameters pointers for RSA
oCXSecure_RsaOaepParamInput and output parameters for RSA Optimal Asymmetric Encryption Padding scheme
oCXSecure_RsaPubKeyAddrAddresses of Input parameters of RSA
\CXSecure_RsaSignParamsStructure for input parameters for RSA Sign verification