ChibiOS/HAL
6.1.0
|
PLATFORM cryptographic subsystem low level driver source. More...
#include "hal.h"
Go to the source code of this file.
Functions | |
void | cry_lld_init (void) |
Low level crypto driver initialization. More... | |
void | cry_lld_start (CRYDriver *cryp) |
Configures and activates the crypto peripheral. More... | |
void | cry_lld_stop (CRYDriver *cryp) |
Deactivates the crypto peripheral. More... | |
cryerror_t | cry_lld_loadkey (CRYDriver *cryp, cryalgorithm_t algorithm, size_t size, const uint8_t *keyp) |
Initializes the transient key for a specific algorithm. More... | |
cryerror_t | cry_lld_encrypt_AES (CRYDriver *cryp, crykey_t key_id, const uint8_t *in, uint8_t *out) |
Encryption of a single block using AES. More... | |
cryerror_t | cry_lld_decrypt_AES (CRYDriver *cryp, crykey_t key_id, const uint8_t *in, uint8_t *out) |
Decryption of a single block using AES. More... | |
cryerror_t | cry_lld_encrypt_AES_ECB (CRYDriver *cryp, crykey_t key_id, size_t size, const uint8_t *in, uint8_t *out) |
Encryption operation using AES-ECB. More... | |
cryerror_t | cry_lld_decrypt_AES_ECB (CRYDriver *cryp, crykey_t key_id, size_t size, const uint8_t *in, uint8_t *out) |
Decryption operation using AES-ECB. More... | |
cryerror_t | cry_lld_encrypt_AES_CBC (CRYDriver *cryp, crykey_t key_id, size_t size, const uint8_t *in, uint8_t *out, const uint8_t *iv) |
Encryption operation using AES-CBC. More... | |
cryerror_t | cry_lld_decrypt_AES_CBC (CRYDriver *cryp, crykey_t key_id, size_t size, const uint8_t *in, uint8_t *out, const uint8_t *iv) |
Decryption operation using AES-CBC. More... | |
cryerror_t | cry_lld_encrypt_AES_CFB (CRYDriver *cryp, crykey_t key_id, size_t size, const uint8_t *in, uint8_t *out, const uint8_t *iv) |
Encryption operation using AES-CFB. More... | |
cryerror_t | cry_lld_decrypt_AES_CFB (CRYDriver *cryp, crykey_t key_id, size_t size, const uint8_t *in, uint8_t *out, const uint8_t *iv) |
Decryption operation using AES-CFB. More... | |
cryerror_t | cry_lld_encrypt_AES_CTR (CRYDriver *cryp, crykey_t key_id, size_t size, const uint8_t *in, uint8_t *out, const uint8_t *iv) |
Encryption operation using AES-CTR. More... | |
cryerror_t | cry_lld_decrypt_AES_CTR (CRYDriver *cryp, crykey_t key_id, size_t size, const uint8_t *in, uint8_t *out, const uint8_t *iv) |
Decryption operation using AES-CTR. More... | |
cryerror_t | cry_lld_encrypt_AES_GCM (CRYDriver *cryp, crykey_t key_id, size_t size, const uint8_t *in, uint8_t *out, const uint8_t *iv, size_t aadsize, const uint8_t *aad, uint8_t *authtag) |
Encryption operation using AES-GCM. More... | |
cryerror_t | cry_lld_decrypt_AES_GCM (CRYDriver *cryp, crykey_t key_id, size_t size, const uint8_t *in, uint8_t *out, const uint8_t *iv, size_t aadsize, const uint8_t *aad, uint8_t *authtag) |
Decryption operation using AES-GCM. More... | |
cryerror_t | cry_lld_encrypt_DES (CRYDriver *cryp, crykey_t key_id, const uint8_t *in, uint8_t *out) |
Encryption of a single block using (T)DES. More... | |
cryerror_t | cry_lld_decrypt_DES (CRYDriver *cryp, crykey_t key_id, const uint8_t *in, uint8_t *out) |
Decryption of a single block using (T)DES. More... | |
cryerror_t | cry_lld_encrypt_DES_ECB (CRYDriver *cryp, crykey_t key_id, size_t size, const uint8_t *in, uint8_t *out) |
Encryption operation using (T)DES-ECB. More... | |
cryerror_t | cry_lld_decrypt_DES_ECB (CRYDriver *cryp, crykey_t key_id, size_t size, const uint8_t *in, uint8_t *out) |
Decryption operation using (T)DES-ECB. More... | |
cryerror_t | cry_lld_encrypt_DES_CBC (CRYDriver *cryp, crykey_t key_id, size_t size, const uint8_t *in, uint8_t *out, const uint8_t *iv) |
Encryption operation using (T)DES-CBC. More... | |
cryerror_t | cry_lld_decrypt_DES_CBC (CRYDriver *cryp, crykey_t key_id, size_t size, const uint8_t *in, uint8_t *out, const uint8_t *iv) |
Decryption operation using (T)DES-CBC. More... | |
cryerror_t | cry_lld_SHA1_init (CRYDriver *cryp, SHA1Context *sha1ctxp) |
Hash initialization using SHA1. More... | |
cryerror_t | cry_lld_SHA1_update (CRYDriver *cryp, SHA1Context *sha1ctxp, size_t size, const uint8_t *in) |
Hash update using SHA1. More... | |
cryerror_t | cry_lld_SHA1_final (CRYDriver *cryp, SHA1Context *sha1ctxp, uint8_t *out) |
Hash finalization using SHA1. More... | |
cryerror_t | cry_lld_SHA256_init (CRYDriver *cryp, SHA256Context *sha256ctxp) |
Hash initialization using SHA256. More... | |
cryerror_t | cry_lld_SHA256_update (CRYDriver *cryp, SHA256Context *sha256ctxp, size_t size, const uint8_t *in) |
Hash update using SHA256. More... | |
cryerror_t | cry_lld_SHA256_final (CRYDriver *cryp, SHA256Context *sha256ctxp, uint8_t *out) |
Hash finalization using SHA256. More... | |
cryerror_t | cry_lld_SHA512_init (CRYDriver *cryp, SHA512Context *sha512ctxp) |
Hash initialization using SHA512. More... | |
cryerror_t | cry_lld_SHA512_update (CRYDriver *cryp, SHA512Context *sha512ctxp, size_t size, const uint8_t *in) |
Hash update using SHA512. More... | |
cryerror_t | cry_lld_SHA512_final (CRYDriver *cryp, SHA512Context *sha512ctxp, uint8_t *out) |
Hash finalization using SHA512. More... | |
cryerror_t | cry_lld_TRNG (CRYDriver *cryp, uint8_t *out) |
True random numbers generator. More... | |
Variables | |
CRYDriver | CRYD1 |
CRY1 driver identifier. More... | |
PLATFORM cryptographic subsystem low level driver source.
Definition in file hal_crypto_lld.c.