NUC472_NUC442_BSP V3.03.005
The Board Support Package for NUC472/NUC442
Macros | Functions
crypto.h File Reference

Cryptographic Accelerator driver header file. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define PRNG_KEY_SIZE_64
 
#define PRNG_KEY_SIZE_128
 
#define PRNG_KEY_SIZE_192
 
#define PRNG_KEY_SIZE_256
 
#define PRNG_SEED_CONT
 
#define PRNG_SEED_RELOAD
 
#define AES_KEY_SIZE_128
 
#define AES_KEY_SIZE_192
 
#define AES_KEY_SIZE_256
 
#define AES_MODE_ECB
 
#define AES_MODE_CBC
 
#define AES_MODE_CFB
 
#define AES_MODE_OFB
 
#define AES_MODE_CTR
 
#define AES_MODE_CBC_CS1
 
#define AES_MODE_CBC_CS2
 
#define AES_MODE_CBC_CS3
 
#define AES_NO_SWAP
 
#define AES_OUT_SWAP
 
#define AES_IN_SWAP
 
#define AES_IN_OUT_SWAP
 
#define DES_MODE_ECB
 
#define DES_MODE_CBC
 
#define DES_MODE_CFB
 
#define DES_MODE_OFB
 
#define DES_MODE_CTR
 
#define TDES_MODE_ECB
 
#define TDES_MODE_CBC
 
#define TDES_MODE_CFB
 
#define TDES_MODE_OFB
 
#define TDES_MODE_CTR
 
#define TDES_NO_SWAP
 
#define TDES_WHL_SWAP
 
#define TDES_OUT_SWAP
 
#define TDES_OUT_WHL_SWAP
 
#define TDES_IN_SWAP
 
#define TDES_IN_WHL_SWAP
 
#define TDES_IN_OUT_SWAP
 
#define TDES_IN_OUT_WHL_SWAP
 
#define SHA_MODE_SHA1
 
#define SHA_MODE_SHA224
 
#define SHA_MODE_SHA256
 
#define SHA_NO_SWAP
 
#define SHA_OUT_SWAP
 
#define SHA_IN_SWAP
 
#define SHA_IN_OUT_SWAP
 
#define CRYPTO_DMA_ONE_SHOT
 
#define CRYPTO_DMA_CONTINUE
 
#define CRYPTO_DMA_LAST
 
#define PRNG_ENABLE_INT()
 This macro enables PRNG interrupt. More...
 
#define PRNG_DISABLE_INT()
 This macro disables PRNG interrupt. More...
 
#define PRNG_GET_INT_FLAG()
 This macro gets PRNG interrupt flag. More...
 
#define PRNG_CLR_INT_FLAG()
 This macro clears PRNG interrupt flag. More...
 
#define AES_ENABLE_INT()
 This macro enables AES interrupt. More...
 
#define AES_DISABLE_INT()
 This macro disables AES interrupt. More...
 
#define AES_GET_INT_FLAG()
 This macro gets AES interrupt flag. More...
 
#define AES_CLR_INT_FLAG()
 This macro clears AES interrupt flag. More...
 
#define AES_ENABLE_KEY_PROTECT()
 This macro enables AES key protection. More...
 
#define AES_DISABLE_KEY_PROTECT()
 This macro disables AES key protection. More...
 
#define TDES_ENABLE_INT()
 This macro enables TDES interrupt. More...
 
#define TDES_DISABLE_INT()
 This macro disables TDES interrupt. More...
 
#define TDES_GET_INT_FLAG()
 This macro gets TDES interrupt flag. More...
 
#define TDES_CLR_INT_FLAG()
 This macro clears TDES interrupt flag. More...
 
#define TDES_ENABLE_KEY_PROTECT()
 This macro enables TDES key protection. More...
 
#define TDES_DISABLE_KEY_PROTECT()
 This macro disables TDES key protection. More...
 
#define SHA_ENABLE_INT()
 This macro enables SHA interrupt. More...
 
#define SHA_DISABLE_INT()
 This macro disables SHA interrupt. More...
 
#define SHA_GET_INT_FLAG()
 This macro gets SHA interrupt flag. More...
 
#define SHA_CLR_INT_FLAG()
 This macro clears SHA interrupt flag. More...
 

Functions

void PRNG_Open (uint32_t u32KeySize, uint32_t u32SeedReload, uint32_t u32Seed)
 Open PRNG function. More...
 
void PRNG_Start (void)
 Start to generate one PRNG key. More...
 
void PRNG_Read (uint32_t u32RandKey[])
 Read the PRNG key. More...
 
void AES_Open (uint32_t u32Channel, uint32_t u32EncDec, uint32_t u32OpMode, uint32_t u32KeySize, uint32_t u32SwapType)
 Open AES encrypt/decrypt function. More...
 
void AES_Start (int32_t u32Channel, uint32_t u32DMAMode)
 Start AES encrypt/decrypt. More...
 
void AES_SetKey (uint32_t u32Channel, uint32_t au32Keys[], uint32_t u32KeySize)
 Set AES keys. More...
 
void AES_SetInitVect (uint32_t u32Channel, uint32_t au32IV[])
 Set AES initial vectors. More...
 
void AES_SetDMATransfer (uint32_t u32Channel, uint32_t u32SrcAddr, uint32_t u32DstAddr, uint32_t u32TransCnt)
 Set AES DMA transfer configuration. More...
 
void TDES_Open (uint32_t u32Channel, uint32_t u32EncDec, int32_t Is3DES, int32_t Is3Key, uint32_t u32OpMode, uint32_t u32SwapType)
 Open TDES encrypt/decrypt function. More...
 
void TDES_Start (int32_t u32Channel, uint32_t u32DMAMode)
 Start TDES encrypt/decrypt. More...
 
void TDES_SetKey (uint32_t u32Channel, uint32_t au32Keys[3][2])
 Set TDES keys. More...
 
void TDES_SetInitVect (uint32_t u32Channel, uint32_t u32IVH, uint32_t u32IVL)
 Set TDES initial vectors. More...
 
void TDES_SetDMATransfer (uint32_t u32Channel, uint32_t u32SrcAddr, uint32_t u32DstAddr, uint32_t u32TransCnt)
 Set TDES DMA transfer configuration. More...
 
void SHA_Open (uint32_t u32OpMode, uint32_t u32SwapType)
 Open SHA encrypt function. More...
 
void SHA_Start (uint32_t u32DMAMode)
 Start SHA encrypt. More...
 
void SHA_SetDMATransfer (uint32_t u32SrcAddr, uint32_t u32TransCnt)
 Set SHA DMA transfer. More...
 
void SHA_Read (uint32_t u32Digest[])
 Read the SHA digest. More...
 

Detailed Description

Cryptographic Accelerator driver header file.

Version
V1.10
Revision
14
Date
14/10/06 1:49p
Note
SPDX-License-Identifier: Apache-2.0 Copyright (C) 2014 Nuvoton Technology Corp. All rights reserved.

Definition in file crypto.h.