Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependents: TYBLE16_simple_data_logger TYBLE16_MP3_Air
crypto_accel_driver.h File Reference
PSA cryptography accelerator driver module. More...
Go to the source code of this file.
Typedefs | |
typedef struct psa_drv_hash_context_s | psa_drv_hash_context_t |
The hardware-specific hash context structure. | |
typedef psa_status_t(* | psa_drv_hash_setup_t )(psa_drv_hash_context_t *p_context) |
The function prototype for the start operation of a hash (message digest) operation. | |
typedef psa_status_t(* | psa_drv_hash_update_t )(psa_drv_hash_context_t *p_context, const uint8_t *p_input, size_t input_length) |
The function prototype for the update operation of a hash (message digest) operation. | |
typedef psa_status_t(* | psa_drv_hash_finish_t )(psa_drv_hash_context_t *p_context, uint8_t *p_output, size_t output_size, size_t *p_output_length) |
The function prototype for the finish operation of a hash (message digest) operation. | |
typedef void(* | psa_drv_hash_abort_t )(psa_drv_hash_context_t *p_context) |
The function prototype for the abort operation of a hash (message digest) operation. | |
typedef struct psa_drv_accel_mac_context_s | psa_drv_accel_mac_context_t |
The hardware-accelerator-specific MAC context structure. | |
typedef psa_status_t(* | psa_drv_accel_mac_setup_t )(psa_drv_accel_mac_context_t *p_context, const uint8_t *p_key, size_t key_length) |
The function prototype for the setup operation of a hardware-accelerated MAC operation. | |
typedef psa_status_t(* | psa_drv_accel_mac_update_t )(psa_drv_accel_mac_context_t *p_context, const uint8_t *p_input, size_t input_length) |
The function prototype for the update operation of a hardware-accelerated MAC operation. | |
typedef psa_status_t(* | psa_drv_accel_mac_finish_t )(psa_drv_accel_mac_context_t *p_context, uint8_t *p_mac, size_t mac_length) |
The function prototype for the finish operation of a hardware-accelerated MAC operation. | |
typedef psa_status_t(* | psa_drv_accel_mac_finish_verify_t )(psa_drv_accel_mac_context_t *p_context, const uint8_t *p_mac, size_t mac_length) |
The function prototype for the finish and verify operation of a hardware-accelerated MAC operation. | |
typedef psa_status_t(* | psa_drv_accel_mac_abort_t )(psa_drv_accel_mac_context_t *p_context) |
The function prototype for the abort operation for a previously started hardware-accelerated MAC operation. | |
typedef psa_status_t(* | psa_drv_accel_mac_t )(const uint8_t *p_input, size_t input_length, const uint8_t *p_key, size_t key_length, psa_algorithm_t alg, uint8_t *p_mac, size_t mac_length) |
The function prototype for the one-shot operation of a hardware-accelerated MAC operation. | |
typedef psa_status_t(* | psa_drv_accel_mac_verify_t )(const uint8_t *p_input, size_t input_length, const uint8_t *p_key, size_t key_length, psa_algorithm_t alg, const uint8_t *p_mac, size_t mac_length) |
The function prototype for the one-shot hardware-accelerated MAC Verify operation. | |
typedef struct psa_drv_accel_cipher_context_s | psa_drv_accel_cipher_context_t |
The hardware-accelerator-specific cipher context structure. | |
typedef psa_status_t(* | psa_drv_accel_cipher_setup_t )(psa_drv_accel_cipher_context_t *p_context, psa_encrypt_or_decrypt_t direction, const uint8_t *p_key_data, size_t key_data_size) |
The function prototype for the setup operation of hardware-accelerated block cipher operations. | |
typedef psa_status_t(* | psa_drv_accel_cipher_set_iv_t )(psa_drv_accel_cipher_context_t *p_context, const uint8_t *p_iv, size_t iv_length) |
The function prototype for the set initialization vector operation of hardware-accelerated block cipher operations Functions that implement this prototype should be named in the following convention: ~~~~~~~~~~~~~{.c} psa_drv_accel_cipher_set_iv_<CIPHER_NAME>_<MODE> ~~~~~~~~~~~~~ Where
| |
typedef psa_status_t(* | psa_drv_accel_cipher_update_t )(psa_drv_accel_cipher_context_t *p_context, const uint8_t *p_input, size_t input_size, uint8_t *p_output, size_t output_size, size_t *p_output_length) |
The function prototype for the update operation of hardware-accelerated block cipher operations. | |
typedef psa_status_t(* | psa_drv_accel_cipher_finish_t )(psa_drv_accel_cipher_context_t *p_context, uint8_t *p_output, size_t output_size, size_t *p_output_length) |
The function prototype for the finish operation of hardware-accelerated block cipher operations. | |
typedef psa_status_t(* | psa_drv_accel_cipher_abort_t )(psa_drv_accel_cipher_context_t *p_context) |
The function prototype for the abort operation of hardware-accelerated block cipher operations. | |
typedef psa_status_t(* | psa_drv_accel_aead_encrypt_t )(const uint8_t *p_key, size_t key_length, psa_algorithm_t alg, const uint8_t *nonce, size_t nonce_length, const uint8_t *additional_data, size_t additional_data_length, const uint8_t *plaintext, size_t plaintext_length, uint8_t *ciphertext, size_t ciphertext_size, size_t *ciphertext_length) |
The function prototype for the hardware-accelerated authenticated encryption operation. | |
typedef psa_status_t(* | psa_drv_accel_aead_decrypt_t )(const uint8_t *p_key, size_t key_length, psa_algorithm_t alg, const uint8_t *nonce, size_t nonce_length, const uint8_t *additional_data, size_t additional_data_length, const uint8_t *ciphertext, size_t ciphertext_length, uint8_t *plaintext, size_t plaintext_size, size_t *plaintext_length) |
The function prototype for the hardware-accelerated authenticated decryption operation. | |
typedef psa_status_t(* | psa_drv_accel_asymmetric_sign_t )(const uint8_t *p_key, size_t key_size, psa_algorithm_t alg, psa_key_type_t key_type, const uint8_t *p_hash, size_t hash_length, uint8_t *p_signature, size_t signature_size, size_t *p_signature_length) |
The function prototype for the hardware-accelerated asymmetric sign operation. | |
typedef psa_status_t(* | psa_drv_accel_asymmetric_verify_t )(const uint8_t *p_key, size_t key_size, psa_algorithm_t alg, psa_key_type_t key_type, const uint8_t *p_hash, size_t hash_length, const uint8_t *p_signature, size_t signature_length) |
The function prototype for the hardware-accelerated signature verify operation. | |
typedef psa_status_t(* | psa_drv_accel_asymmetric_encrypt_t )(const uint8_t *p_key, size_t key_size, psa_algorithm_t alg, psa_key_type_t key_type, const uint8_t *p_input, size_t input_length, const uint8_t *p_salt, size_t salt_length, uint8_t *p_output, size_t output_size, size_t *p_output_length) |
The function prototype for the hardware-accelerated asymmetric encrypt operation. | |
typedef psa_status_t(* | psa_drv_accel_asymmetric_decrypt_t )(const uint8_t *p_key, size_t key_size, psa_algorithm_t alg, psa_key_type_t key_type, const uint8_t *p_input, size_t input_length, const uint8_t *p_salt, size_t salt_length, uint8_t *p_output, size_t output_size, size_t *p_output_length) |
The function prototype for the hardware=acce;erated asymmetric decrypt operation. |
Detailed Description
PSA cryptography accelerator driver module.
This header declares types and function signatures for cryptography drivers that access key material directly. This is meant for on-chip cryptography accelerators.
This file is part of the PSA Crypto Driver Model, containing functions for driver developers to implement to enable hardware to be called in a standardized way by a PSA Cryptographic API implementation. The functions comprising the driver model, which driver authors implement, are not intended to be called by application developers.
Definition in file crypto_accel_driver.h.
Generated on Tue Jul 12 2022 13:55:06 by
