xilsecure
Vitis Drivers API Documentation
xsecure_kat.h File Reference

Overview

This file contains KAT interface APIs for Versal and Versal Net.

MODIFICATION HISTORY:
Ver   Who  Date        Changes


5.0 kpt 07/15/2022 Initial release 5.1 yog 05/03/2023 Fixed MISRA C violation of Rule 8.3 5.4 yog 04/29/2024 Fixed doxygen grouping.

 

Macros

#define XSECURE_KAT_MSG_LEN_IN_BYTES   (32U)
 Message length of known answer test in bytes. More...
 
#define XSECURE_KAT_AAD_SIZE_IN_BYTES   (16U)
 AAD size of known answer test in bytes. More...
 
#define XSECURE_KAT_IV_SIZE_IN_BYTES   (16U)
 IV size of known answer test in bytes. More...
 
#define XSECURE_KAT_KEY_SIZE_IN_BYTES   (32U)
 Key size of known answer test in bytes. More...
 
#define XSECURE_KAT_MSG_LEN_IN_WORDS   (8U)
 Message length of known answer test in words. More...
 
#define XSECURE_KAT_RSA_PUB_EXP   (0x1000100U)
 RSA public exponent of known answer test. More...
 
#define XSECURE_KAT_ECC_P521_SHA3_HASH_SIZE_IN_BYTES   (66U)
 Hash size of ECC P521 and SHA3 in bytes. More...
 

Functions

u8 * XSecure_GetKatMessage (void)
 This function returns message to perform KAT. More...
 
u8 * XSecure_GetKatAesKey (void)
 This function returns AES key for KAT. More...
 
u8 * XSecure_GetKatSha3ExpHash (void)
 This function returns expected SHA3 hash for KAT. More...
 
u32 * XSecure_GetKatRsaModulus (void)
 This function returns modulus for RSA KAT. More...
 
u32 * XSecure_GetKatRsaModExt (void)
 This function returns public pre-calculated exponential (R^2 Mod N) value for RSA KAT. More...
 
u32 * XSecure_GetKatRsaData (void)
 This function returns data for RSA KAT. More...
 
u32 * XSecure_GetKatRsaCtData (void)
 This function returns cipher text data for RSA KAT. More...
 
u32 * XSecure_GetKatRsaPrivateExp (void)
 This function returns private exponent for RSA KAT. More...
 
int XSecure_RsaPublicEncryptKat (void)
 This function performs KAT on RSA core. More...
 
XSecure_EllipticKeyXSecure_GetKatEccPublicKey (XSecure_EllipticCrvClass CrvClass)
 This function returns ECC public key to perform KAT. More...
 
XSecure_EllipticSignXSecure_GetKatEccExpSign (XSecure_EllipticCrvClass CrvClass)
 This function returns ECC expected signature to perform KAT. More...
 
u8 * XSecure_GetKatEccPrivateKey (XSecure_EllipticCrvClass CrvClass)
 This function returns ECC private key to perform KAT. More...
 
u8 * XSecure_GetKatEccEphemeralKey (XSecure_EllipticCrvTyp CrvType)
 This function returns ECC ephemeral key to perform KAT. More...
 
int XSecure_EllipticVerifySignKat (XSecure_EllipticCrvClass CrvClass)
 This function performs ECC sign verify known answer test(KAT) on ECC core. More...
 
int XSecure_EllipticSignGenerateKat (XSecure_EllipticCrvClass CrvClass)
 This function performs ECC sign generate known answer test(KAT) on ECC core. More...
 
int XSecure_EllipticPwct (XSecure_EllipticCrvTyp Curvetype, u64 DAddr, XSecure_EllipticKeyAddr *PubKeyAddr)
 This function performs ECC pairwise consistency test on ECC core. More...
 
int XSecure_AesDecryptCmKat (const XSecure_Aes *AesInstance)
 This function performs known answer test(KAT) on AES engine to confirm DPA counter measures is working fine. More...
 
int XSecure_AesDecryptKat (XSecure_Aes *AesInstance)
 This function performs decryption known answer test(KAT) on AES engine. More...
 
int XSecure_AesEncryptKat (XSecure_Aes *AesInstance)
 This function performs encryption known answer test(KAT) on AES engine. More...
 
int XSecure_Sha3Kat (XSecure_Sha3 *SecureSha3)
 This function performs known answer test(KAT) on SHA crypto engine. More...