12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- /**
- * @file hv_hdcp2x_Common.h
- * @brief This file contains common functions shared between HDCP2X drivers.
- * @verbatim
- * ==============================================================================
- * ##### How to use this driver #####
- * ==============================================================================
- * (+) Use AesEncrypt(...) to Encrypt the Data with AES.
- * (+) Use AesKeySetup(...) to Setup the key of AES.
- * (+) Use AesDecrypt(...) to Decrypt the Data with AES.
- * @endverbatim
- *
- * @author HiView SoC Software Team
- * @version 0.0.1
- * @date 2022-08-22
- */
- #ifndef HV_HDCP2X_COMMON_H_
- #define HV_HDCP2X_COMMON_H_
- #ifdef __cplusplus
- extern "C" {
- #endif
- /***************************** Include Files ********************************/
- #include "hv_vos_Comm.h"
- #include "hv_hdcp_BigDigits.h"
- /************************** Constant Definitions ****************************/
- /**************************** Type Definitions ******************************/
- #define Hv_Hdcp2x_RxMpSizeof(A) (sizeof(A)/sizeof(UINT32))
- /***************** Macros (Inline Functions) Definitions ********************/
- /************************** Function Prototypes *****************************/
- /* Cryptographic functions */
- void Hv_Hdcp2x_CmnSha256Hash(const UCHAR8 *Data, UINT32 DataSize, UCHAR8 *HashedData);
- int Hv_Hdcp2x_CmnHmacSha256Hash(const UCHAR8 *Data, int DataSize, const UCHAR8 *Key, int KeySize, UCHAR8 *HashedData);
- void Hv_Hdcp2x_CmnAes128Encrypt(const UCHAR8 *Data, const UCHAR8 *Key, UCHAR8 *Output);
- void Hv_Hdcp2x_CmnAes128Decrypt(const UCHAR8 *Data, const UCHAR8 *Key, UCHAR8 *Output);
- void AesDecrypt(const UCHAR8 In[], UCHAR8 Out[], const UINT32 Key[], int KeySize);
- void AesEncrypt(const UCHAR8 In[], UCHAR8 Out[], const UINT32 Key[], int KeySize);
- void AesKeySetup(const UCHAR8 Key[], UINT32 W[], int KeySizeBits);
- #ifdef __cplusplus
- }
- #endif
- #endif /* XHDCP2X_COMMON_H_ */
|