114 #ifndef ti_drivers_crypto_CryptoCC32XX__include 115 #define ti_drivers_crypto_CryptoCC32XX__include 125 #include <ti/drivers/dpl/HwiP.h> 126 #include <ti/drivers/dpl/SemaphoreP.h> 129 #define CryptoCC32XX_CMD_RESERVED 32 131 #define CryptoCC32XX_STATUS_RESERVED -32 137 #define CryptoCC32XX_STATUS_SUCCESS 0 143 #define CryptoCC32XX_STATUS_ERROR -1 150 #define CryptoCC32XX_STATUS_UNDEFINEDCMD -2 157 #define CryptoCC32XX_STATUS_ERROR_VERIFY -3 164 #define CryptoCC32XX_STATUS_ERROR_NOT_SUPPORTED -4 167 #define CryptoCC32XX_MAX_TYPES 3 169 #define CryptoCC32XX_MD5_BLOCK_SIZE 64 170 #define CryptoCC32XX_SHA1_BLOCK_SIZE 64 171 #define CryptoCC32XX_SHA256_BLOCK_SIZE 64 173 #define CryptoCC32XX_MD5_DIGEST_SIZE 16 174 #define CryptoCC32XX_SHA1_DIGEST_SIZE 20 175 #define CryptoCC32XX_SHA256_DIGEST_SIZE 32 177 #define CryptoCC32XX_MAX_DIGEST_SIZE CryptoCC32XX_SHA256_DIGEST_SIZE 178 #define CryptoCC32XX_MAX_BLOCK_SIZE CryptoCC32XX_SHA256_BLOCK_SIZE 470 void *pInBuff,
size_t inLen,
497 void *pInBuff,
size_t inLen,
523 void *pBuff,
size_t len,
549 void *pBuff,
size_t len,
CryptoCC32XX_Type
Cryptography types configuration.
Definition: CryptoCC32XX.h:186
uint32_t digestCount
Definition: CryptoCC32XX.h:335
Definition: CryptoCC32XX.h:241
struct CryptoCC32XX_Config * CryptoCC32XX_Handle
A handle that is returned from a CryptoCC32XX_open() call.
Definition: CryptoCC32XX.h:349
Definition: CryptoCC32XX.h:207
DES Parameters.
Definition: CryptoCC32XX.h:301
HwiP_Handle hwiHandle[3]
Definition: CryptoCC32XX.h:359
void * pIV
Definition: CryptoCC32XX.h:305
Definition: CryptoCC32XX.h:227
Definition: CryptoCC32XX.h:208
uint8_t first
Definition: CryptoCC32XX.h:333
CryptoCC32XX_HmacMethod
HMAC Cryptography methods configuration Keep the Crypto method in the lower 8 bit and Crypto type in ...
Definition: CryptoCC32XX.h:223
Crypto Global configuration.
Definition: CryptoCC32XX.h:378
HMAC Parameters.
Definition: CryptoCC32XX.h:324
int32_t CryptoCC32XX_encrypt(CryptoCC32XX_Handle handle, CryptoCC32XX_EncryptMethod method, void *pInBuff, size_t inLen, void *pOutBuff, size_t *outLen, CryptoCC32XX_EncryptParams *pParams)
Function which encrypt given data by a given AES or DES method. relevant to CryptoCC32XX_AES and Cryp...
Definition: CryptoCC32XX.h:190
SemaphoreP_Handle sem[3]
Definition: CryptoCC32XX.h:363
CryptoCC32XX_AesKeySize keySize
Definition: CryptoCC32XX.h:291
CryptoCC32XX_DesKeySize keySize
Definition: CryptoCC32XX.h:304
AES Additional Authentication Data Parameters.
Definition: CryptoCC32XX.h:277
Definition: CryptoCC32XX.h:188
Definition: CryptoCC32XX.h:239
Definition: CryptoCC32XX.h:210
uint8_t moreData
Definition: CryptoCC32XX.h:329
void * object
Definition: CryptoCC32XX.h:381
Definition: CryptoCC32XX.h:252
CryptoCC32XX_DesKeySize
DES Cryptography key size type configuration.
Definition: CryptoCC32XX.h:250
Definition: CryptoCC32XX.h:228
Definition: CryptoCC32XX.h:202
Definition: CryptoCC32XX.h:225
uint32_t blockSize
Definition: CryptoCC32XX.h:343
AES Parameters.
Definition: CryptoCC32XX.h:288
Definition: CryptoCC32XX.h:211
CryptoCC32XX_AesAadInputParams input
Definition: CryptoCC32XX.h:279
Cryptography Parameters.
Definition: CryptoCC32XX.h:313
#define CryptoCC32XX_MAX_TYPES
Definition: CryptoCC32XX.h:167
CryptoCC32XX_Handle CryptoCC32XX_open(uint32_t index, uint32_t types)
Opens a Crypto object with a given index and returns a CryptoCC32XX_Handle.
CryptoCC32XX_AesAadParams aadParams
Definition: CryptoCC32XX.h:293
CryptoCC32XX_DesParams des
Definition: CryptoCC32XX.h:316
Definition: CryptoCC32XX.h:204
const uint8_t * pKey
Definition: CryptoCC32XX.h:290
const uint8_t * pKey
Definition: CryptoCC32XX.h:303
Definition: CryptoCC32XX.h:240
CryptoCC32XX_EncryptMethod
AES and DES Cryptography methods configuration Keep the Crypto method in the lower 8 bit and Crypto t...
Definition: CryptoCC32XX.h:200
Definition: CryptoCC32XX.h:212
void CryptoCC32XX_HmacParams_init(CryptoCC32XX_HmacParams *params)
Initialize params structure to default values.
struct CryptoCC32XX_Config CryptoCC32XX_Config
Crypto Global configuration.
void CryptoCC32XX_close(CryptoCC32XX_Handle handle)
Function to close a given Crypto peripheral specified by the Crypto handle.
CryptoCC32XX_AesKeySize
AES Cryptography key size type configuration.
Definition: CryptoCC32XX.h:237
int32_t CryptoCC32XX_decrypt(CryptoCC32XX_Handle handle, CryptoCC32XX_EncryptMethod method, void *pInBuff, size_t inLen, void *pOutBuff, size_t *outLen, CryptoCC32XX_EncryptParams *pParams)
Function which decrypt given cipher data by a given AES or DES method. relevant to CryptoCC32XX_AES a...
Definition: CryptoCC32XX.h:189
CryptoCC32XX Object.
Definition: CryptoCC32XX.h:357
Definition: CryptoCC32XX.h:253
void * pIV
Definition: CryptoCC32XX.h:292
void * pContext
Definition: CryptoCC32XX.h:331
#define CryptoCC32XX_MAX_BLOCK_SIZE
Definition: CryptoCC32XX.h:178
int32_t CryptoCC32XX_verify(CryptoCC32XX_Handle handle, CryptoCC32XX_HmacMethod method, void *pBuff, size_t len, uint8_t *pSignature, CryptoCC32XX_HmacParams *pParams)
Function which verify a given Hash value on given plain Text. relevant to CryptoCC32XX_HMAC.
Definition: CryptoCC32XX.h:203
Definition: CryptoCC32XX.h:206
CryptoCC32XX_AesParams aes
Definition: CryptoCC32XX.h:315
int32_t CryptoCC32XX_sign(CryptoCC32XX_Handle handle, CryptoCC32XX_HmacMethod method, void *pBuff, size_t len, uint8_t *pSignature, CryptoCC32XX_HmacParams *pParams)
Function which generates the HMAC Hash value of given plain Text. relevant to CryptoCC32XX_HMAC.
uint8_t * pKey
Definition: CryptoCC32XX.h:327
Definition: CryptoCC32XX.h:226
#define CryptoCC32XX_MAX_DIGEST_SIZE
Definition: CryptoCC32XX.h:177
uint32_t buffLen
Definition: CryptoCC32XX.h:341
void CryptoCC32XX_init(void)
Function to initializes the Crypto module.
struct CryptoCC32XX_Object CryptoCC32XX_Object
CryptoCC32XX Object.
bool isOpen
Definition: CryptoCC32XX.h:361
Definition: CryptoCC32XX.h:205