STM32F479xx HAL User Manual
Functions
HASH extended processing functions in DMA mode
HASH Extended Exported Functions

HASH extended processing functions using DMA mode. More...

Functions

HAL_StatusTypeDef HAL_HASHEx_SHA224_Start_DMA (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size)
 Initialize the HASH peripheral in SHA224 mode then initiate a DMA transfer to feed the input buffer to the Peripheral.
HAL_StatusTypeDef HAL_HASHEx_SHA224_Finish (HASH_HandleTypeDef *hhash, uint8_t *pOutBuffer, uint32_t Timeout)
 Return the computed digest in SHA224 mode.
HAL_StatusTypeDef HAL_HASHEx_SHA256_Start_DMA (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size)
 Initialize the HASH peripheral in SHA256 mode then initiate a DMA transfer to feed the input buffer to the Peripheral.
HAL_StatusTypeDef HAL_HASHEx_SHA256_Finish (HASH_HandleTypeDef *hhash, uint8_t *pOutBuffer, uint32_t Timeout)
 Return the computed digest in SHA256 mode.

Detailed Description

HASH extended processing functions using DMA mode.

 ===============================================================================
                ##### DMA mode HASH extended  processing functions #####
 ===============================================================================
    [..]  This section provides functions allowing to calculate in DMA mode
          the hash value using one of the following algorithms:
      (+) SHA224
         (++) HAL_HASHEx_SHA224_Start_DMA()
         (++) HAL_HASHEx_SHA224_Finish()
      (+) SHA256
         (++) HAL_HASHEx_SHA256_Start_DMA()
         (++) HAL_HASHEx_SHA256_Finish()

    [..]  When resorting to DMA mode to enter the data in the Peripheral, user must resort
          to  HAL_HASHEx_xxx_Start_DMA() then read the resulting digest with
          HAL_HASHEx_xxx_Finish().

    [..]  In case of multi-buffer HASH processing, MDMAT bit must first be set before
          the successive calls to HAL_HASHEx_xxx_Start_DMA(). Then, MDMAT bit needs to be
          reset before the last call to HAL_HASHEx_xxx_Start_DMA(). Digest is finally
          retrieved thanks to HAL_HASHEx_xxx_Finish().


Function Documentation

HAL_StatusTypeDef HAL_HASHEx_SHA224_Finish ( HASH_HandleTypeDef hhash,
uint8_t *  pOutBuffer,
uint32_t  Timeout 
)

Return the computed digest in SHA224 mode.

Note:
The API waits for DCIS to be set then reads the computed digest.
HAL_HASHEx_SHA224_Finish() can be used as well to retrieve the digest in HMAC SHA224 mode.
Parameters:
hhashHASH handle.
pOutBufferpointer to the computed digest. Digest size is 28 bytes.
TimeoutTimeout value.
Return values:
HALstatus

Definition at line 452 of file stm32f4xx_hal_hash_ex.c.

References HASH_Finish().

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

Initialize the HASH peripheral in SHA224 mode then initiate a DMA transfer to feed the input buffer to the Peripheral.

Note:
Once the DMA transfer is finished, HAL_HASHEx_SHA224_Finish() API must be called to retrieve the computed digest.
Parameters:
hhashHASH handle.
pInBufferpointer to the input buffer (buffer to be hashed).
Sizelength of the input buffer in bytes.
Return values:
HALstatus

Definition at line 437 of file stm32f4xx_hal_hash_ex.c.

References HASH_ALGOSELECTION_SHA224, and HASH_Start_DMA().

HAL_StatusTypeDef HAL_HASHEx_SHA256_Finish ( HASH_HandleTypeDef hhash,
uint8_t *  pOutBuffer,
uint32_t  Timeout 
)

Return the computed digest in SHA256 mode.

Note:
The API waits for DCIS to be set then reads the computed digest.
HAL_HASHEx_SHA256_Finish() can be used as well to retrieve the digest in HMAC SHA256 mode.
Parameters:
hhashHASH handle.
pOutBufferpointer to the computed digest. Digest size is 32 bytes.
TimeoutTimeout value.
Return values:
HALstatus

Definition at line 482 of file stm32f4xx_hal_hash_ex.c.

References HASH_Finish().

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

Initialize the HASH peripheral in SHA256 mode then initiate a DMA transfer to feed the input buffer to the Peripheral.

Note:
Once the DMA transfer is finished, HAL_HASHEx_SHA256_Finish() API must be called to retrieve the computed digest.
Parameters:
hhashHASH handle.
pInBufferpointer to the input buffer (buffer to be hashed).
Sizelength of the input buffer in bytes.
Return values:
HALstatus

Definition at line 467 of file stm32f4xx_hal_hash_ex.c.

References HASH_ALGOSELECTION_SHA256, and HASH_Start_DMA().