Go to the documentation of this file.
57 #ifdef ENV_USE_FREERTOS
65 #ifdef HAL_PKC_MODULE_ENABLED
385 #ifdef ENV_RTOS_USE_SEMP
uint16_t app_pkc_ecc_point_multi_sync(app_pkc_ecc_point_multi_t *p_input, uint32_t timeout)
Realize the point multiplication operation of ECC ellipse algorithm,: result = k * point,Polling mode...
uint16_t app_pkc_montgomery_inversion_sync(app_pkc_montgomery_inversion_t *p_input, uint32_t *p_K, uint32_t timeout)
Realization of modular inversion: result = A^(-1)mod P,Polling mode.
app_pkc_type_t use_type
Definition: app_pkc.h:102
PKC Montgomery Modular Multiplication expression input.
Definition: gr55xx_hal_pkc.h:232
PKC Montgomery Inversion expression input.
Definition: gr55xx_hal_pkc.h:245
uint16_t app_pkc_modular_compare_async(app_pkc_modular_compare_t *p_input)
Realization of modular comparison operation: result = A mod P,Interrupt mode.
PKC Modular Left Shift expression input.
Definition: gr55xx_hal_pkc.h:211
uint16_t app_pkc_init(app_pkc_params_t *p_params, app_pkc_evt_handler_t evt_handler)
Initialize the APP PKC DRIVER according to the specified parameters in the app_pkc_params_t and app_p...
pkc_big_number_add_t app_pkc_big_number_add_t
Definition: app_pkc.h:129
pkc_modular_shift_t app_pkc_modular_shift_t
Definition: app_pkc.h:124
@ APP_PKC_TYPE_MAX
Definition: app_pkc.h:78
uint16_t app_pkc_montgomery_multi_async(app_pkc_montgomery_multi_t *p_input)
Realization of modular multiplication: result = A*B mod P,Interrupt mode.
uint16_t app_pkc_big_number_add_async(app_pkc_big_number_add_t *p_input)
Realize addition of large numbers: result = A+B,Interrupt mode.
PKC Modular Comparison expression input.
Definition: gr55xx_hal_pkc.h:222
pkc_init_t init
Definition: app_pkc.h:103
void(* app_pkc_evt_handler_t)(app_pkc_evt_t *p_evt)
PKC event callback definition.
Definition: app_pkc.h:134
PKC handle Structure definition.
Definition: gr55xx_hal_pkc.h:134
uint32_t * p_kout
Definition: app_pkc.h:105
PKC Big Number Addition expression input.
Definition: gr55xx_hal_pkc.h:267
uint32_t error_code
Definition: app_pkc.h:114
uint16_t app_pkc_modular_left_shift_sync(app_pkc_modular_shift_t *p_input, uint32_t timeout)
Realization of module shift left operation: result = (A<<ShiftBits) mod P,Polling mode.
pkc_modular_add_t app_pkc_modular_add_t
Definition: app_pkc.h:122
pkc_montgomery_inversion_t app_pkc_montgomery_inversion_t
Definition: app_pkc.h:127
uint16_t app_pkc_big_number_multi_sync(app_pkc_big_number_multi_t *p_input, uint32_t timeout)
Realize multiplication of large numbers: result = A*B,Polling mode.
app_pkc_type_t
PKC operating mode Enumerations definition.
Definition: app_pkc.h:75
@ APP_PKC_TYPE_POLLING
Definition: app_pkc.h:77
PKC Init Structure definition.
Definition: gr55xx_hal_pkc.h:111
app_pkc_evt_type_t
PKC event Enumerations definition.
Definition: app_pkc.h:86
PKC Modular Subtraction expression input.
Definition: gr55xx_hal_pkc.h:200
uint16_t app_pkc_big_number_multi_async(app_pkc_big_number_multi_t *p_input)
Realize multiplication of large numbers: result = A*B,Interrupt mode.
uint16_t app_pkc_big_number_add_sync(app_pkc_big_number_add_t *p_input, uint32_t timeout)
Realize addition of large numbers: result = A+B,Polling mode.
@ APP_PKC_EVT_ERROR
Definition: app_pkc.h:87
uint16_t app_pkc_montgomery_multi_sync(app_pkc_montgomery_multi_t *p_input, uint32_t timeout)
Realization of modular multiplication: result = A*B mod P,Polling mode.
pkc_modular_sub_t app_pkc_modular_sub_t
Definition: app_pkc.h:123
uint16_t app_pkc_ecc_point_multi_async(app_pkc_ecc_point_multi_t *p_input)
Realize the point multiplication operation of ECC ellipse algorithm,: result = k * point,Interrupt mo...
pkc_montgomery_multi_t app_pkc_montgomery_multi_t
Definition: app_pkc.h:126
PKC ECC Point Multiplication expression input.
Definition: gr55xx_hal_pkc.h:166
uint16_t app_pkc_modular_left_shift_async(app_pkc_modular_shift_t *p_input)
Realization of module shift left operation: result = (A<<ShiftBits) mod P,Interrupt mode.
void * p_result
Definition: app_pkc.h:104
uint16_t app_pkc_modular_add_async(app_pkc_modular_add_t *p_input)
Realization of modular addition: result = (A + B) mod P,Interrupt mode.
uint16_t app_pkc_deinit(void)
De-initialize the APP PKC DRIVER peripheral.
This file contains all the functions prototypes for the HAL module driver.
uint16_t app_pkc_montgomery_inversion_async(app_pkc_montgomery_inversion_t *p_input, uint32_t *p_K)
Realization of modular inversion: result = A^(-1)mod P,Interrupt mode.
pkc_ecc_point_multi_t app_pkc_ecc_point_multi_t
Definition: app_pkc.h:121
@ APP_PKC_TYPE_INTERRUPT
Definition: app_pkc.h:76
PKC Modular Addition expression input.
Definition: gr55xx_hal_pkc.h:189
PKC Big Number Multiplication expression input.
Definition: gr55xx_hal_pkc.h:257
uint16_t app_pkc_modular_sub_async(app_pkc_modular_sub_t *p_input)
Implementation of modular subtraction: result = (A - B) mod P,Interrupt mode.
PKC parameters structure definition.
Definition: app_pkc.h:101
pkc_handle_t * app_pkc_get_handle(void)
Return the PKC handle.
pkc_big_number_multi_t app_pkc_big_number_multi_t
Definition: app_pkc.h:128
uint16_t app_pkc_modular_compare_sync(app_pkc_modular_compare_t *p_input, uint32_t timeout)
Realization of modular comparison operation: result = A mod P,Polling mode.
Header file of app rtos config code.
PKC event structure definition.
Definition: app_pkc.h:112
Header file of app driver error code.
@ APP_PKC_EVT_DONE
Definition: app_pkc.h:88
uint16_t app_pkc_modular_add_sync(app_pkc_modular_add_t *p_input, uint32_t timeout)
Realization of modular addition: result = (A + B) mod P,Polling mode.
app_pkc_evt_type_t type
Definition: app_pkc.h:113
uint16_t app_pkc_modular_sub_sync(app_pkc_modular_sub_t *p_input, uint32_t timeout)
Implementation of modular subtraction: result = (A - B) mod P,Polling mode.
pkc_modular_compare_t app_pkc_modular_compare_t
Definition: app_pkc.h:125