STM32F4xx_HAL_Driver  1.8.3
stm32f4xx_hal_hash.h File Reference

Header file of HASH HAL module. More...

Go to the source code of this file.

Data Structures

struct  HASH_InitTypeDef
 HASH Configuration Structure definition. More...
 
struct  endif
 ADC handle Structure definition. More...
 

Typedefs

typedef struct __HASH_HandleTypeDef else typedef struct endif HASH_HandleTypeDef
 HASH Handle Structure definition.
 
typedef void(* pHASH_CallbackTypeDef) (HASH_HandleTypeDef *hhash)
 HAL HASH Callback pointer definition. More...
 

Enumerations

enum  HAL_HASH_StateTypeDef {
  HAL_HASH_STATE_RESET = 0x00U , HAL_HASH_STATE_READY = 0x01U , HAL_HASH_STATE_BUSY = 0x02U , HAL_HASH_STATE_TIMEOUT = 0x06U ,
  HAL_HASH_STATE_ERROR = 0x07U , HAL_HASH_STATE_SUSPENDED = 0x08U
}
 HAL State structures definition. More...
 
enum  HAL_HASH_PhaseTypeDef {
  HAL_HASH_PHASE_READY = 0x01U , HAL_HASH_PHASE_PROCESS = 0x02U , HAL_HASH_PHASE_HMAC_STEP_1 = 0x03U , HAL_HASH_PHASE_HMAC_STEP_2 = 0x04U ,
  HAL_HASH_PHASE_HMAC_STEP_3 = 0x05U
}
 HAL phase structures definition. More...
 
enum  HAL_HASH_SuspendTypeDef { HAL_HASH_SUSPEND_NONE = 0x00U , HAL_HASH_SUSPEND = 0x01U }
 HAL HASH mode suspend definitions. More...
 
enum  HAL_HASH_CallbackIDTypeDef {
  HAL_HASH_MSPINIT_CB_ID = 0x00U , HAL_HASH_MSPDEINIT_CB_ID = 0x01U , HAL_HASH_INPUTCPLT_CB_ID = 0x02U , HAL_HASH_DGSTCPLT_CB_ID = 0x03U ,
  HAL_HASH_ERROR_CB_ID = 0x04U
}
 HAL HASH common Callback ID enumeration definition. More...
 

Functions

HAL_StatusTypeDef HAL_HASH_Init (HASH_HandleTypeDef *hhash)
 Initialize the HASH according to the specified parameters in the HASH_HandleTypeDef and create the associated handle. More...
 
HAL_StatusTypeDef HAL_HASH_DeInit (HASH_HandleTypeDef *hhash)
 DeInitialize the HASH peripheral. More...
 
void HAL_HASH_MspInit (HASH_HandleTypeDef *hhash)
 Initialize the HASH MSP. More...
 
void HAL_HASH_MspDeInit (HASH_HandleTypeDef *hhash)
 DeInitialize the HASH MSP. More...
 
void HAL_HASH_InCpltCallback (HASH_HandleTypeDef *hhash)
 Input data transfer complete call back. More...
 
void HAL_HASH_DgstCpltCallback (HASH_HandleTypeDef *hhash)
 Digest computation complete call back. More...
 
void HAL_HASH_ErrorCallback (HASH_HandleTypeDef *hhash)
 Error callback. More...
 
HAL_StatusTypeDef HAL_HASH_RegisterCallback (HASH_HandleTypeDef *hhash, HAL_HASH_CallbackIDTypeDef CallbackID, pHASH_CallbackTypeDef pCallback)
 Register a User HASH Callback To be used instead of the weak (surcharged) predefined callback. More...
 
HAL_StatusTypeDef HAL_HASH_UnRegisterCallback (HASH_HandleTypeDef *hhash, HAL_HASH_CallbackIDTypeDef CallbackID)
 Unregister a HASH Callback HASH Callback is redirected to the weak (surcharged) predefined callback. More...
 
HAL_StatusTypeDef HAL_HASH_SHA1_Start (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t *pOutBuffer, uint32_t Timeout)
 Initialize the HASH peripheral in SHA1 mode, next process pInBuffer then read the computed digest. More...
 
HAL_StatusTypeDef HAL_HASH_MD5_Start (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t *pOutBuffer, uint32_t Timeout)
 Initialize the HASH peripheral in MD5 mode, next process pInBuffer then read the computed digest. More...
 
HAL_StatusTypeDef HAL_HASH_MD5_Accmlt (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size)
 If not already done, initialize the HASH peripheral in MD5 mode then processes pInBuffer. More...
 
HAL_StatusTypeDef HAL_HASH_SHA1_Accmlt (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size)
 If not already done, initialize the HASH peripheral in SHA1 mode then processes pInBuffer. More...
 
HAL_StatusTypeDef HAL_HASH_MD5_Accmlt_End (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t *pOutBuffer, uint32_t Timeout)
 End computation of a single HASH signature after several calls to HAL_HASH_MD5_Accmlt() API. More...
 
HAL_StatusTypeDef HAL_HASH_SHA1_Accmlt_End (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t *pOutBuffer, uint32_t Timeout)
 End computation of a single HASH signature after several calls to HAL_HASH_SHA1_Accmlt() API. More...
 
HAL_StatusTypeDef HAL_HASH_SHA1_Start_IT (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t *pOutBuffer)
 Initialize the HASH peripheral in SHA1 mode, next process pInBuffer then read the computed digest in interruption mode. More...
 
HAL_StatusTypeDef HAL_HASH_SHA1_Accmlt_IT (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size)
 If not already done, initialize the HASH peripheral in SHA1 mode then processes pInBuffer in interruption mode. More...
 
HAL_StatusTypeDef HAL_HASH_SHA1_Accmlt_End_IT (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t *pOutBuffer)
 End computation of a single HASH signature after several calls to HAL_HASH_SHA1_Accmlt_IT() API. More...
 
HAL_StatusTypeDef HAL_HASH_MD5_Start_IT (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t *pOutBuffer)
 Initialize the HASH peripheral in MD5 mode, next process pInBuffer then read the computed digest in interruption mode. More...
 
HAL_StatusTypeDef HAL_HASH_MD5_Accmlt_IT (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size)
 If not already done, initialize the HASH peripheral in MD5 mode then processes pInBuffer in interruption mode. More...
 
HAL_StatusTypeDef HAL_HASH_MD5_Accmlt_End_IT (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t *pOutBuffer)
 End computation of a single HASH signature after several calls to HAL_HASH_MD5_Accmlt_IT() API. More...
 
void HAL_HASH_IRQHandler (HASH_HandleTypeDef *hhash)
 Handle HASH interrupt request. More...
 
HAL_StatusTypeDef HAL_HASH_SHA1_Start_DMA (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size)
 Initialize the HASH peripheral in SHA1 mode then initiate a DMA transfer to feed the input buffer to the Peripheral. More...
 
HAL_StatusTypeDef HAL_HASH_SHA1_Finish (HASH_HandleTypeDef *hhash, uint8_t *pOutBuffer, uint32_t Timeout)
 Return the computed digest in SHA1 mode. More...
 
HAL_StatusTypeDef HAL_HASH_MD5_Start_DMA (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size)
 Initialize the HASH peripheral in MD5 mode then initiate a DMA transfer to feed the input buffer to the Peripheral. More...
 
HAL_StatusTypeDef HAL_HASH_MD5_Finish (HASH_HandleTypeDef *hhash, uint8_t *pOutBuffer, uint32_t Timeout)
 Return the computed digest in MD5 mode. More...
 
HAL_StatusTypeDef HAL_HMAC_SHA1_Start (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t *pOutBuffer, uint32_t Timeout)
 Initialize the HASH peripheral in HMAC SHA1 mode, next process pInBuffer then read the computed digest. More...
 
HAL_StatusTypeDef HAL_HMAC_MD5_Start (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t *pOutBuffer, uint32_t Timeout)
 Initialize the HASH peripheral in HMAC MD5 mode, next process pInBuffer then read the computed digest. More...
 
HAL_StatusTypeDef HAL_HMAC_MD5_Start_IT (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t *pOutBuffer)
 Initialize the HASH peripheral in HMAC MD5 mode, next process pInBuffer then read the computed digest in interrupt mode. More...
 
HAL_StatusTypeDef HAL_HMAC_SHA1_Start_IT (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t *pOutBuffer)
 Initialize the HASH peripheral in HMAC SHA1 mode, next process pInBuffer then read the computed digest in interrupt mode. More...
 
HAL_StatusTypeDef HAL_HMAC_SHA1_Start_DMA (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size)
 Initialize the HASH peripheral in HMAC SHA1 mode then initiate the required DMA transfers to feed the key and the input buffer to the Peripheral. More...
 
HAL_StatusTypeDef HAL_HMAC_MD5_Start_DMA (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size)
 Initialize the HASH peripheral in HMAC MD5 mode then initiate the required DMA transfers to feed the key and the input buffer to the Peripheral. More...
 
HAL_HASH_StateTypeDef HAL_HASH_GetState (HASH_HandleTypeDef *hhash)
 Return the HASH handle state. More...
 
HAL_StatusTypeDef HAL_HASH_GetStatus (HASH_HandleTypeDef *hhash)
 Return the HASH HAL status. More...
 
void HAL_HASH_ContextSaving (HASH_HandleTypeDef *hhash, uint8_t *pMemBuffer)
 Save the HASH context in case of processing suspension. More...
 
void HAL_HASH_ContextRestoring (HASH_HandleTypeDef *hhash, uint8_t *pMemBuffer)
 Restore the HASH context in case of processing resumption. More...
 
void HAL_HASH_SwFeed_ProcessSuspend (HASH_HandleTypeDef *hhash)
 Initiate HASH processing suspension when in polling or interruption mode. More...
 
HAL_StatusTypeDef HAL_HASH_DMAFeed_ProcessSuspend (HASH_HandleTypeDef *hhash)
 Suspend the HASH processing when in DMA mode. More...
 
uint32_t HAL_HASH_GetError (HASH_HandleTypeDef *hhash)
 Return the HASH handle error code. More...
 
HAL_StatusTypeDef HASH_Start (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t *pOutBuffer, uint32_t Timeout, uint32_t Algorithm)
 Initialize the HASH peripheral, next process pInBuffer then read the computed digest. More...
 
HAL_StatusTypeDef HASH_Accumulate (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint32_t Algorithm)
 If not already done, initialize the HASH peripheral then processes pInBuffer. More...
 
HAL_StatusTypeDef HASH_Accumulate_IT (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint32_t Algorithm)
 If not already done, initialize the HASH peripheral then processes pInBuffer in interruption mode. More...
 
HAL_StatusTypeDef HASH_Start_IT (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t *pOutBuffer, uint32_t Algorithm)
 Initialize the HASH peripheral, next process pInBuffer then read the computed digest in interruption mode. More...
 
HAL_StatusTypeDef HASH_Start_DMA (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint32_t Algorithm)
 Initialize the HASH peripheral then initiate a DMA transfer to feed the input buffer to the Peripheral. More...
 
HAL_StatusTypeDef HASH_Finish (HASH_HandleTypeDef *hhash, uint8_t *pOutBuffer, uint32_t Timeout)
 Return the computed digest. More...
 
HAL_StatusTypeDef HMAC_Start (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t *pOutBuffer, uint32_t Timeout, uint32_t Algorithm)
 Initialize the HASH peripheral in HMAC mode, next process pInBuffer then read the computed digest. More...
 
HAL_StatusTypeDef HMAC_Start_IT (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t *pOutBuffer, uint32_t Algorithm)
 Initialize the HASH peripheral in HMAC mode, next process pInBuffer then read the computed digest in interruption mode. More...
 
HAL_StatusTypeDef HMAC_Start_DMA (HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint32_t Algorithm)
 Initialize the HASH peripheral in HMAC mode then initiate the required DMA transfers to feed the key and the input buffer to the Peripheral. More...
 

Detailed Description

Header file of HASH HAL module.

Author
MCD Application Team
Attention

Copyright (c) 2016 STMicroelectronics. All rights reserved.

This software is licensed under terms that can be found in the LICENSE file in the root directory of this software component. If no LICENSE file comes with this software, it is provided AS-IS.

Definition in file stm32f4xx_hal_hash.h.