AES-256 hardware key definition functions
Description: This file specifies AES-256 hardware key definition functions.
There are two groups of functions:
Definition in file tegra_se.h.
Go to the source code of this file.
Typedefs | |
typedef struct tegra_se_cmac_context | se_cmac_ctx |
Functions | |
uint32_t | se_acquire (void) |
void | se_release (void) |
uint32_t | se_derive_root_key (uint8_t *root_key, size_t root_key_len, uint8_t *fv, size_t fv_len, uint32_t keyslot) |
int | se_write_keyslot (uint8_t *key_in, uint32_t keylen, uint32_t key_quad_sel, uint32_t keyslot) |
uint32_t | se_clear_aes_keyslots (void) |
se_cmac_ctx * | tegra_se_cmac_new (void) |
Creates an SE CMAC context. More... | |
void | tegra_se_cmac_free (se_cmac_ctx *se_cmac) |
Frees an SE CMAC context. More... | |
int | tegra_se_cmac_init (se_cmac_ctx *se_cmac, se_aes_keyslot_t keyslot, uint32_t keylen) |
Initialize the SE CMAC from a user-provided key. More... | |
int | tegra_se_cmac_update (se_cmac_ctx *se_cmac, void *data, uint32_t dlen) |
Caches input data in an SE CMAC. More... | |
int | tegra_se_cmac_final (se_cmac_ctx *se_cmac, uint8_t *out, uint32_t *poutlen) |
Finalizes a SE CMAC. More... | |
int | se_nist_sp_800_108_with_cmac (se_aes_keyslot_t keyslot, uint32_t key_len, char const *context, char const *label, uint32_t dk_len, uint8_t *out_dk) |
A hardware-based NIST-SP-800-108 KDF; derives keys from the SE keyslot. More... | |