xilsecure
Vitis Drivers API Documentation
XilSecure KAT Client APIs

Functions

int XSecure_AesDecryptKat (XSecure_ClientInstance *InstancePtr)
 This function sends IPI request to PLM to perform decrypt KAT on AES engine. More...
 
int XSecure_AesDecryptCmKat (XSecure_ClientInstance *InstancePtr)
 This function sends IPI request to PLM to perform KAT on AES DPA countermeasure KAT. More...
 
int XSecure_RsaPublicEncKat (XSecure_ClientInstance *InstancePtr)
 This function sends IPI request to PLM to perform RSA encrypt KAT. More...
 
int XSecure_Sha3Kat (XSecure_ClientInstance *InstancePtr)
 This function sends IPI request to PLM to perform SHA3 KAT. More...
 
int XSecure_EllipticSignVerifyKat (XSecure_ClientInstance *InstancePtr, XSecure_EccCrvClass CurveClass)
 This function sends IPI request to PLM to perform ECC sign verify KAT. More...
 
int XSecure_AesEncryptKat (XSecure_ClientInstance *InstancePtr)
 This function sends IPI request to PLM to perform encrypt KAT. More...
 
int XSecure_RsaPrivateDecKat (XSecure_ClientInstance *InstancePtr)
 This function sends IPI request to PLM to perform RSA private decrypt KAT. More...
 
int XSecure_EllipticSignGenKat (XSecure_ClientInstance *InstancePtr, XSecure_EccCrvClass CurveClass)
 This function sends IPI request to PLM to perform ECC sign generate KAT. More...
 
int XSecure_TrngKat (XSecure_ClientInstance *InstancePtr)
 This function sends IPI request to PLM to perform TRNG KAT and health tests. More...
 
int XSecure_UpdateHnicKatStatus (XSecure_ClientInstance *InstancePtr, XSecure_KatOp KatOp, u32 KatMaskLen, u32 *KatMask)
 This function sends IPI request to PLM to set or clear kat mask of HNIC. More...
 
int XSecure_UpdateCpm5NKatStatus (XSecure_ClientInstance *InstancePtr, XSecure_KatOp KatOp, u32 KatMaskLen, u32 *KatMask)
 This function sends IPI request to PLM to set or clear kat mask of CPM5N. More...
 
int XSecure_UpdatePcideKatStatus (XSecure_ClientInstance *InstancePtr, XSecure_KatOp KatOp, u32 KatMaskLen, u32 *KatMask)
 This function sends IPI request to PLM to set or clear kat mask of PCIDE. More...
 
int XSecure_UpdatePkiKatStatus (XSecure_ClientInstance *InstancePtr, XSecure_KatOp KatOp, u32 KatMaskLen, u32 *KatMask)
 This function sets or clears KAT mask of PKI. More...
 

Function Documentation

int XSecure_AesDecryptCmKat ( XSecure_ClientInstance *  InstancePtr)

This function sends IPI request to PLM to perform KAT on AES DPA countermeasure KAT.

Parameters
InstancePtrPointer to the client instance
Returns
  • XST_SUCCESS On success
  • XST_INVALID_PARAM If input parameters are invalid
  • XST_FAILURE On failure

Send an IPI request to the PLM by using the CDO command to call XSecure_AesDecCmKat API and returns the status of the IPI response.

References XSECURE_API_AES_DECRYPT_CM_KAT, XSECURE_API_KAT, and XSecure_ProcessMailbox().

int XSecure_AesDecryptKat ( XSecure_ClientInstance *  InstancePtr)

This function sends IPI request to PLM to perform decrypt KAT on AES engine.

Parameters
InstancePtrPointer to the client instance
Returns
  • XST_SUCCESS When KAT Pass
  • XST_FAILURE On failure

Send an IPI request to the PLM by using the CDO command to call XSecure_AesDecKat API and returns the status of the IPI response.

References XSECURE_API_AES_DECRYPT_KAT, XSECURE_API_KAT, and XSecure_ProcessMailbox().

int XSecure_AesEncryptKat ( XSecure_ClientInstance *  InstancePtr)

This function sends IPI request to PLM to perform encrypt KAT.

Parameters
InstancePtrPointer to the client instance
Returns
  • XST_SUCCESS When KAT Pass
  • XST_INVALID_PARAM If input parameters are invalid
  • XST_FAILURE On failure

Send an IPI request to the PLM by using the CDO command to call XSecure_AesEncKat API and returns the status of the IPI response.

References XSECURE_API_AES_ENCRYPT_KAT, XSECURE_API_KAT, and XSecure_ProcessMailbox().

int XSecure_EllipticSignGenKat ( XSecure_ClientInstance *  InstancePtr,
XSecure_EccCrvClass  CurveClass 
)

This function sends IPI request to PLM to perform ECC sign generate KAT.

Parameters
InstancePtrPointer to the client instance
CurveClassType of elliptic curve class(Prime - 0, Binary - 1)
Returns
  • XST_SUCCESS On success
  • XST_INVALID_PARAM If input parameters are invalid
  • XST_FAILURE On failure

Send an IPI request to the PLM by using the CDO command to call XSecure_EllipticSignGenKat API and returns the status of the IPI response.

References XSECURE_API_ELLIPTIC_SIGN_GEN_KAT, XSECURE_API_KAT, and XSecure_ProcessMailbox().

Referenced by main(), and XSecure_KatIpiHandler().

int XSecure_EllipticSignVerifyKat ( XSecure_ClientInstance *  InstancePtr,
XSecure_EccCrvClass  CurveClass 
)

This function sends IPI request to PLM to perform ECC sign verify KAT.

Parameters
InstancePtrPointer to the client instance
CurveClassType of elliptic curve class(Prime - 0, Binary - 1)
Returns
  • XST_SUCCESS On success
  • XST_INVALID_PARAM If input parameters are invalid
  • XST_FAILURE On failure

Send an IPI request to the PLM by using the CDO command to call XSecure_EllipticSignVerifyKat API and returns the status of the IPI response.

References XSECURE_API_ELLIPTIC_SIGN_VERIFY_KAT, XSECURE_API_KAT, and XSecure_ProcessMailbox().

Referenced by main(), and XSecure_KatIpiHandler().

int XSecure_RsaPrivateDecKat ( XSecure_ClientInstance *  InstancePtr)

This function sends IPI request to PLM to perform RSA private decrypt KAT.

Parameters
InstancePtrPointer to the client instance
Returns
  • XST_SUCCESS On success
  • XST_INVALID_PARAM If input parameters are invalid
  • XST_FAILURE On failure

Send an IPI request to the PLM by using the CDO command to call XSecure_RsaPrivateDecKat API and returns the status of the IPI response.

References XSECURE_API_KAT, XSECURE_API_RSA_PRIVATE_DEC_KAT, and XSecure_ProcessMailbox().

Referenced by XSecure_KatIpiHandler().

int XSecure_RsaPublicEncKat ( XSecure_ClientInstance *  InstancePtr)

This function sends IPI request to PLM to perform RSA encrypt KAT.

Parameters
InstancePtrPointer to the client instance
Returns
  • XST_SUCCESS On success
  • XST_INVALID_PARAM If input parameters are invalid
  • XST_FAILURE On failure

Send an IPI request to the PLM by using the CDO command to call XSecure_RsaPubEncKat API and returns the status of the IPI response.

References XSECURE_API_KAT, XSECURE_API_RSA_PUB_ENC_KAT, and XSecure_ProcessMailbox().

int XSecure_Sha3Kat ( XSecure_ClientInstance *  InstancePtr)

This function sends IPI request to PLM to perform SHA3 KAT.

Parameters
InstancePtrPointer to the client instance
Returns
  • XST_SUCCESS When KAT Pass
  • XST_INVALID_PARAM If input parameters are invalid
  • XST_FAILURE On failure

Send an IPI request to the PLM by using the CDO command to call XSecure_ShaKat API and returns the status of the IPI response.

References XSECURE_API_KAT, XSECURE_API_SHA3_KAT, and XSecure_ProcessMailbox().

int XSecure_TrngKat ( XSecure_ClientInstance *  InstancePtr)

This function sends IPI request to PLM to perform TRNG KAT and health tests.

Parameters
InstancePtrPointer to the client instance
Returns
  • XST_SUCCESS When KAT Pass
  • XST_INVALID_PARAM If any input parameter is invalid.
  • XST_FAILURE If there is a failure

Send an IPI request to the PLM by using the CDO command to call XSecure_TrngKat API and returns the status of the IPI response.

Send an IPI request to the PLM by using the CDO command to call XSecure_TrngKat API and returns the status of the IPI response.

References XSECURE_API_KAT, XSECURE_API_TRNG_KAT, and XSecure_ProcessMailbox().

Referenced by XSecure_KatPlatIpiHandler().

int XSecure_UpdateCpm5NKatStatus ( XSecure_ClientInstance *  InstancePtr,
XSecure_KatOp  KatOp,
u32  KatMaskLen,
u32 *  KatMask 
)

This function sends IPI request to PLM to set or clear kat mask of CPM5N.

Parameters
InstancePtrPointer to the client instance
KatOpOperation to set or clear KAT mask
KatMaskLenLength of the KAT mask
KatMaskKAT mask
Returns
  • XST_SUCCESS On Success
  • XST_FAILURE On failure

References XSECURE_API_UPDATE_CPM5N_KAT_STATUS, and XSECURE_MIN_KAT_MASK_LEN.

int XSecure_UpdateHnicKatStatus ( XSecure_ClientInstance *  InstancePtr,
XSecure_KatOp  KatOp,
u32  KatMaskLen,
u32 *  KatMask 
)

This function sends IPI request to PLM to set or clear kat mask of HNIC.

Parameters
InstancePtrPointer to the client instance
KatOpOperation to set or clear KAT mask
KatMaskLenLength of the KAT mask
KatMaskKAT mask
Returns
  • XST_SUCCESS On Success
  • XST_FAILURE On failure

References XSECURE_API_UPDATE_HNIC_KAT_STATUS, and XSECURE_MIN_KAT_MASK_LEN.

int XSecure_UpdatePcideKatStatus ( XSecure_ClientInstance *  InstancePtr,
XSecure_KatOp  KatOp,
u32  KatMaskLen,
u32 *  KatMask 
)

This function sends IPI request to PLM to set or clear kat mask of PCIDE.

Parameters
InstancePtrPointer to the client instance
KatOpOperation to set or clear KAT mask
KatMaskLenLength of the KAT mask
KatMaskKAT mask
Returns
  • XST_SUCCESS On Success
  • XST_FAILURE On failure

References XSECURE_API_UPDATE_PCIDE_KAT_STATUS, and XSECURE_MIN_KAT_MASK_LEN.

int XSecure_UpdatePkiKatStatus ( XSecure_ClientInstance *  InstancePtr,
XSecure_KatOp  KatOp,
u32  KatMaskLen,
u32 *  KatMask 
)

This function sets or clears KAT mask of PKI.

Parameters
InstancePtrPointer to the client instance
KatOpOperation to set or clear KAT mask
KatMaskLenLength of the KAT mask
KatMaskPointer to the KAT mask
Returns
  • XST_SUCCESS If set or clear is successful
  • XST_FAILURE On failure

References XSECURE_API_UPDATE_PKI_KAT_STATUS, and XSECURE_MAX_KAT_MASK_LEN.