![]() |
RA Flexible Software Package Documentation
Release v6.0.0
|
|
Interface for key injection by Renesas Secure IP (RSIP) functions.
The RSIP key injection interface provides RSIP functionality.
Data Structures | |
struct | rsip_aes_wrapped_key_t |
struct | rsip_chacha20_wrapped_key_t |
struct | rsip_rsa2048_private_wrapped_key_t |
struct | rsip_rsa3072_private_wrapped_key_t |
struct | rsip_rsa4096_private_wrapped_key_t |
struct | rsip_ecc_private_wrapped_key_t |
struct | rsip_hmac_sha_wrapped_key_t |
struct | rsip_key_injection_api_t |
Enumerations | |
enum | rsip_key_injection_type_t |
struct rsip_aes_wrapped_key_t |
struct rsip_chacha20_wrapped_key_t |
struct rsip_rsa2048_private_wrapped_key_t |
struct rsip_rsa3072_private_wrapped_key_t |
struct rsip_rsa4096_private_wrapped_key_t |
struct rsip_ecc_private_wrapped_key_t |
struct rsip_hmac_sha_wrapped_key_t |
struct rsip_key_injection_api_t |
Functions implemented at the HAL layer will follow this API.
Data Fields | |
fsp_err_t(* | AES128_InitialKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_aes_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* | AES192_InitialKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_aes_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* | AES256_InitialKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_aes_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* | AES128_XTS_InitialKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_aes_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* | AES256_XTS_InitialKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_aes_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* | ChaCha20_InitialKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_chacha20_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* | RSA2048_InitialPrivateKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_rsa2048_private_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* | RSA3072_InitialPrivateKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_rsa3072_private_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* | RSA4096_InitialPrivateKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_rsa4096_private_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* | ECC_secp256r1_InitialPrivateKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_ecc_private_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* | ECC_secp384r1_InitialPrivateKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_ecc_private_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* | ECC_secp521r1_InitialPrivateKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_ecc_private_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* | ECC_secp256k1_InitialPrivateKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_ecc_private_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* | ECC_brainpoolP256r1_InitialPrivateKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_ecc_private_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* | ECC_brainpoolP384r1_InitialPrivateKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_ecc_private_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* | ECC_brainpoolP512r1_InitialPrivateKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_ecc_private_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* | ECC_Ed25519_InitialPrivateKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_ecc_private_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* | HMAC_SHA224_InitialKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_hmac_sha_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* | HMAC_SHA256_InitialKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_hmac_sha_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* | HMAC_SHA384_InitialKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_hmac_sha_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* | HMAC_SHA512_InitialKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_hmac_sha_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* | HMAC_SHA512_224_InitialKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_hmac_sha_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* | HMAC_SHA512_256_InitialKeyWrap )(rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_hmac_sha_wrapped_key_t *const p_wrapped_key) |
fsp_err_t(* rsip_key_injection_api_t::AES128_InitialKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_aes_wrapped_key_t *const p_wrapped_key) |
This API outputs 128-bit AES wrapped key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 128-bit AES wrapped key |
fsp_err_t(* rsip_key_injection_api_t::AES192_InitialKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_aes_wrapped_key_t *const p_wrapped_key) |
This API outputs 192-bit AES wrapped key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 192-bit AES wrapped key |
fsp_err_t(* rsip_key_injection_api_t::AES256_InitialKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_aes_wrapped_key_t *const p_wrapped_key) |
This API outputs 256-bit AES wrapped key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 256-bit AES wrapped key |
fsp_err_t(* rsip_key_injection_api_t::AES128_XTS_InitialKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_aes_wrapped_key_t *const p_wrapped_key) |
This API outputs 128-bit AES-XTS wrapped key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 128-bit AES-XTS wrapped key |
fsp_err_t(* rsip_key_injection_api_t::AES256_XTS_InitialKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_aes_wrapped_key_t *const p_wrapped_key) |
This API outputs 256-bit AES-XTS wrapped key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 256-bit AES-XTS wrapped key |
fsp_err_t(* rsip_key_injection_api_t::ChaCha20_InitialKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_chacha20_wrapped_key_t *const p_wrapped_key) |
This API outputs 256-bit ChaCha20 wrapped key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 256-bit ChaCha20 wrapped key |
fsp_err_t(* rsip_key_injection_api_t::RSA2048_InitialPrivateKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_rsa2048_private_wrapped_key_t *const p_wrapped_key) |
This API outputs 2048-bit RSA wrapped private key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 2048-bit RSA wrapped private key |
fsp_err_t(* rsip_key_injection_api_t::RSA3072_InitialPrivateKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_rsa3072_private_wrapped_key_t *const p_wrapped_key) |
This API outputs 3072-bit RSA wrapped private key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 3072-bit RSA wrapped private key |
fsp_err_t(* rsip_key_injection_api_t::RSA4096_InitialPrivateKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_rsa4096_private_wrapped_key_t *const p_wrapped_key) |
This API outputs 4096-bit RSA wrapped private key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 4096-bit RSA wrapped private key |
fsp_err_t(* rsip_key_injection_api_t::ECC_secp256r1_InitialPrivateKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_ecc_private_wrapped_key_t *const p_wrapped_key) |
This API outputs 256-bit ECC wrapped private key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 256-bit ECC wrapped private key |
fsp_err_t(* rsip_key_injection_api_t::ECC_secp384r1_InitialPrivateKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_ecc_private_wrapped_key_t *const p_wrapped_key) |
This API outputs 384-bit ECC wrapped private key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 384-bit ECC wrapped private key |
fsp_err_t(* rsip_key_injection_api_t::ECC_secp521r1_InitialPrivateKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_ecc_private_wrapped_key_t *const p_wrapped_key) |
This API outputs 521-bit ECC wrapped private key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 521-bit ECC wrapped private key |
fsp_err_t(* rsip_key_injection_api_t::ECC_secp256k1_InitialPrivateKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_ecc_private_wrapped_key_t *const p_wrapped_key) |
This API outputs 256-bit ECC wrapped private key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 256-bit ECC wrapped private key |
fsp_err_t(* rsip_key_injection_api_t::ECC_brainpoolP256r1_InitialPrivateKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_ecc_private_wrapped_key_t *const p_wrapped_key) |
This API outputs 256-bit brainpool ECC wrapped private key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 256-bit ECC wrapped private key |
fsp_err_t(* rsip_key_injection_api_t::ECC_brainpoolP384r1_InitialPrivateKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_ecc_private_wrapped_key_t *const p_wrapped_key) |
This API outputs 384-bit brainpool ECC wrapped private key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 384-bit ECC wrapped private key |
fsp_err_t(* rsip_key_injection_api_t::ECC_brainpoolP512r1_InitialPrivateKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_ecc_private_wrapped_key_t *const p_wrapped_key) |
This API outputs 512-bit brainpool ECC wrapped private key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 512-bit ECC wrapped private key |
fsp_err_t(* rsip_key_injection_api_t::ECC_Ed25519_InitialPrivateKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_ecc_private_wrapped_key_t *const p_wrapped_key) |
This API outputs 256-bit Edwards curve ECC wrapped private key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 256-bit ECC wrapped private key |
fsp_err_t(* rsip_key_injection_api_t::HMAC_SHA224_InitialKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_hmac_sha_wrapped_key_t *const p_wrapped_key) |
This API outputs 224-bit HMAC-SHA wrapped key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 224-bit HMAC-SHA wrapped key |
fsp_err_t(* rsip_key_injection_api_t::HMAC_SHA256_InitialKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_hmac_sha_wrapped_key_t *const p_wrapped_key) |
This API outputs 256-bit HMAC-SHA wrapped key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 256-bit HMAC-SHA wrapped key |
fsp_err_t(* rsip_key_injection_api_t::HMAC_SHA384_InitialKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_hmac_sha_wrapped_key_t *const p_wrapped_key) |
This API outputs 384-bit HMAC-SHA wrapped key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 384-bit HMAC-SHA wrapped key |
fsp_err_t(* rsip_key_injection_api_t::HMAC_SHA512_InitialKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_hmac_sha_wrapped_key_t *const p_wrapped_key) |
This API outputs 512-bit HMAC-SHA wrapped key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 512-bit HMAC-SHA wrapped key |
fsp_err_t(* rsip_key_injection_api_t::HMAC_SHA512_224_InitialKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_hmac_sha_wrapped_key_t *const p_wrapped_key) |
This API outputs 512/224-bit HMAC-SHA wrapped key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 512/224-bit HMAC-SHA wrapped key |
fsp_err_t(* rsip_key_injection_api_t::HMAC_SHA512_256_InitialKeyWrap) (rsip_key_injection_type_t const key_injection_type, uint8_t const *const p_wrapped_user_factory_programming_key, uint8_t const *const p_initial_vector, uint8_t const *const p_user_key, rsip_hmac_sha_wrapped_key_t *const p_wrapped_key) |
This API outputs 512/256-bit HMAC-SHA wrapped key.
[in] | key_injection_type | Selection key injection type when generating wrapped key |
[in] | p_wrapped_user_factory_programming_key | Wrapped user factory programming key by the Renesas Key Wrap Service. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_initial_vector | Initialization vector when generating encrypted key. When key injection type is plain, this is not required and any value can be specified. |
[in] | p_user_key | User key. If key injection type is not plain, it must be encrypted and have MAC appended. |
[out] | p_wrapped_key | 512/256-bit HMAC-SHA wrapped key |