STM32F439xx HAL User Manual
Functions
HMAC processing functions using DMA mode
HASHEx Exported Functions

HMAC processing functions using DMA mode . More...

Functions

HAL_StatusTypeDef HAL_HMACEx_SHA224_Start_DMA (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size)
 Initializes the HASH peripheral in HMAC SHA224 mode then enables DMA to control data transfer.
HAL_StatusTypeDef HAL_HMACEx_SHA256_Start_DMA (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size)
 Initializes the HASH peripheral in HMAC SHA256 mode then enables DMA to control data transfer.

Detailed Description

HMAC processing functions using DMA mode .

 ===============================================================================
                ##### HMAC processing using DMA functions #####
 ===============================================================================  
    [..]  This section provides functions allowing to calculate in DMA mode
          the HMAC value using one of the following algorithms:
      (+) SHA224
      (+) SHA256


Function Documentation

HAL_StatusTypeDef HAL_HMACEx_SHA224_Start_DMA ( HASH_HandleTypeDef hhash,
uint8_t *  pInBuffer,
uint32_t  Size 
)

Initializes the HASH peripheral in HMAC SHA224 mode then enables DMA to control data transfer.

Parameters:
hhashpointer to a HASH_HandleTypeDef structure that contains the configuration information for HASH module
pInBufferPointer to the input buffer (buffer to be hashed).
SizeLength of the input buffer in bytes. If the Size is not multiple of 64 bytes, the padding is managed by hardware.
Return values:
HALstatus

Definition at line 1491 of file stm32f4xx_hal_hash_ex.c.

References __HAL_HASH_SET_NBVALIDBITS, HAL_DMA_Start_IT(), HAL_HASH_PHASE_PROCESS, HAL_HASH_PHASE_READY, HAL_HASH_STATE_BUSY, HASH_ALGOMODE_HMAC, HASH_ALGOSELECTION_SHA224, HASH_HMAC_KEYTYPE_LONGKEY, HASH_HandleTypeDef::HashBuffSize, HASHEx_DMAError(), HASHEx_DMAXferCplt(), HASH_HandleTypeDef::HashInCount, HASH_HandleTypeDef::hdmain, HASH_HandleTypeDef::Init, HASH_InitTypeDef::KeySize, HASH_HandleTypeDef::Phase, HASH_HandleTypeDef::pHashInBuffPtr, HASH_InitTypeDef::pKey, HASH_HandleTypeDef::State, __DMA_HandleTypeDef::XferCpltCallback, and __DMA_HandleTypeDef::XferErrorCallback.

HAL_StatusTypeDef HAL_HMACEx_SHA256_Start_DMA ( HASH_HandleTypeDef hhash,
uint8_t *  pInBuffer,
uint32_t  Size 
)

Initializes the HASH peripheral in HMAC SHA256 mode then enables DMA to control data transfer.

Parameters:
hhashpointer to a HASH_HandleTypeDef structure that contains the configuration information for HASH module
pInBufferPointer to the input buffer (buffer to be hashed).
SizeLength of the input buffer in bytes. If the Size is not multiple of 64 bytes, the padding is managed by hardware.
Return values:
HALstatus

Definition at line 1558 of file stm32f4xx_hal_hash_ex.c.

References __HAL_HASH_SET_NBVALIDBITS, HAL_DMA_Start_IT(), HAL_HASH_PHASE_PROCESS, HAL_HASH_PHASE_READY, HAL_HASH_STATE_BUSY, HASH_ALGOMODE_HMAC, HASH_ALGOSELECTION_SHA256, HASH_HMAC_KEYTYPE_LONGKEY, HASH_HandleTypeDef::HashBuffSize, HASHEx_DMAError(), HASHEx_DMAXferCplt(), HASH_HandleTypeDef::HashInCount, HASH_HandleTypeDef::hdmain, HASH_HandleTypeDef::Init, HASH_InitTypeDef::KeySize, HASH_HandleTypeDef::Phase, HASH_HandleTypeDef::pHashInBuffPtr, HASH_InitTypeDef::pKey, HASH_HandleTypeDef::State, __DMA_HandleTypeDef::XferCpltCallback, and __DMA_HandleTypeDef::XferErrorCallback.