|
| enum | uapi_drv_cipher_symc_type_t { UAPI_DRV_CIPHER_SYMC_TYPE_NORMAL = 0x0
, UAPI_DRV_CIPHER_SYMC_TYPE_REG
, UAPI_DRV_CIPHER_SYMC_TYPE_MAX
, UAPI_DRV_CIPHER_SYMC_TYPE_INVALID = 0xffffffff
} |
| | 对称加密通道类型 更多...
|
| |
| enum | uapi_drv_cipher_symc_alg_t {
UAPI_DRV_CIPHER_SYMC_ALG_TDES = 0x0
, UAPI_DRV_CIPHER_SYMC_ALG_AES = 0x1
, UAPI_DRV_CIPHER_SYMC_ALG_SM4 = 0x2
, UAPI_DRV_CIPHER_SYMC_ALG_LEA = 0x3
,
UAPI_DRV_CIPHER_SYMC_ALG_DMA = 0x4
, UAPI_DRV_CIPHER_SYMC_ALG_MAX
, UAPI_DRV_CIPHER_SYMC_ALG_INVALID = 0xffffffff
} |
| | 对称加密算法类型 更多...
|
| |
| enum | uapi_drv_cipher_symc_work_mode_t {
UAPI_DRV_CIPHER_SYMC_WORK_MODE_ECB = 0x0
, UAPI_DRV_CIPHER_SYMC_WORK_MODE_CBC
, UAPI_DRV_CIPHER_SYMC_WORK_MODE_CTR
, UAPI_DRV_CIPHER_SYMC_WORK_MODE_OFB
,
UAPI_DRV_CIPHER_SYMC_WORK_MODE_CFB
, UAPI_DRV_CIPHER_SYMC_WORK_MODE_CCM
, UAPI_DRV_CIPHER_SYMC_WORK_MODE_GCM
, UAPI_DRV_CIPHER_SYMC_WORK_MODE_CBC_MAC
,
UAPI_DRV_CIPHER_SYMC_WORK_MODE_CMAC
, UAPI_DRV_CIPHER_SYMC_WORK_MODE_MAX
, UAPI_DRV_CIPHER_SYMC_WORK_MODE_INVALID = 0xffffffff
} |
| | 对称加密算法工作模式 更多...
|
| |
| enum | uapi_drv_cipher_symc_key_length_t {
UAPI_DRV_CIPHER_SYMC_KEY_64BIT = 0x0
, UAPI_DRV_CIPHER_SYMC_KEY_128BIT = 0x1
, UAPI_DRV_CIPHER_SYMC_KEY_192BIT = 0x2
, UAPI_DRV_CIPHER_SYMC_KEY_256BIT = 0x3
,
UAPI_DRV_CIPHER_SYMC_KEY_LENGTH_MAX
, UAPI_DRV_CIPHER_SYMC_KEY_LENGTH_INVALID = 0xffffffff
} |
| | 对称加密密钥长度 更多...
|
| |
| enum | uapi_drv_cipher_symc_key_parity_t { UAPI_DRV_CIPHER_SYMC_KEY_EVEN = 0x0
, UAPI_DRV_CIPHER_SYMC_KEY_ODD = 0x1
, UAPI_DRV_CIPHER_SYMC_KEY_PARITY_MAX
, UAPI_DRV_CIPHER_SYMC_KEY_PARITY_INVALID = 0xffffffff
} |
| | 对称算法密钥奇偶性 更多...
|
| |
| enum | uapi_drv_cipher_symc_bit_width_t {
UAPI_DRV_CIPHER_SYMC_BIT_WIDTH_1BIT = 0x0
, UAPI_DRV_CIPHER_SYMC_BIT_WIDTH_8BIT = 0x1
, UAPI_DRV_CIPHER_SYMC_BIT_WIDTH_64BIT = 0x2
, UAPI_DRV_CIPHER_SYMC_BIT_WIDTH_128BIT = 0x3
,
UAPI_DRV_CIPHER_SYMC_BIT_WIDTH_MAX
, UAPI_DRV_CIPHER_SYMC_BIT_WIDTH_INVALID = 0xffffffff
} |
| | 对称算法密钥位宽 更多...
|
| |
| enum | uapi_drv_cipher_symc_iv_change_type_t {
UAPI_DRV_CIPHER_SYMC_IV_DO_NOT_CHANGE = 0
, UAPI_DRV_CIPHER_SYMC_IV_CHANGE_ONE_PKG
, UAPI_DRV_CIPHER_SYMC_IV_CHANGE_ALL_PKG
, UAPI_DRV_CIPHER_SYMC_GCM_IV_DO_NOT_CHANGE
,
UAPI_DRV_CIPHER_SYMC_GCM_IV_CHANGE_START
, UAPI_DRV_CIPHER_SYMC_GCM_IV_CHANGE_UPDATE
, UAPI_DRV_CIPHER_SYMC_GCM_IV_CHANGE_FINISH
, UAPI_DRV_CIPHER_SYMC_CCM_IV_DO_NOT_CHANGE
,
UAPI_DRV_CIPHER_SYMC_CCM_IV_CHANGE_START
, UAPI_DRV_CIPHER_SYMC_CCM_IV_CHANGE_UPDATE
, UAPI_DRV_CIPHER_SYMC_CCM_IV_CHANGE_FINISH
, UAPI_DRV_CIPHER_SYMC_IV_CHANGE_MAX
,
UAPI_DRV_CIPHER_SYMC_IV_CHANGE_INVALID = 0xffffffff
} |
| | 对称算法初始值标志 更多...
|
| |
| enum | uapi_drv_cipher_buffer_secure { UAPI_DRV_CIPHER_BUF_NONSECURE
, UAPI_DRV_CIPHER_BUF_SECURE
} |
| | 缓冲区的安全属性选择 更多...
|
| |
| enum | uapi_drv_hash_type {
UAPI_DRV_CIPHER_HASH_TYPE_SHA1 = 0xf690a0
, UAPI_DRV_CIPHER_HASH_TYPE_SHA224 = 0x10690e0
, UAPI_DRV_CIPHER_HASH_TYPE_SHA256 = 0x1169100
, UAPI_DRV_CIPHER_HASH_TYPE_SHA384 = 0x127a180
,
UAPI_DRV_CIPHER_HASH_TYPE_SHA512 = 0x137a200
, UAPI_DRV_CIPHER_HASH_TYPE_SM3 = 0x2169100
, UAPI_DRV_CIPHER_HASH_TYPE_HMAC_SHA1 = 0x10f690a0
, UAPI_DRV_CIPHER_HASH_TYPE_HMAC_SHA224 = 0x110690e0
,
UAPI_DRV_CIPHER_HASH_TYPE_HMAC_SHA256 = 0x11169100
, UAPI_DRV_CIPHER_HASH_TYPE_HMAC_SHA384 = 0x1127a180
, UAPI_DRV_CIPHER_HASH_TYPE_HMAC_SHA512 = 0x1137a200
, UAPI_DRV_CIPHER_HASH_TYPE_HMAC_SM3 = 0x12169100
,
UAPI_DRV_CIPHER_HASH_TYPE_INVALID = 0xffffffff
} |
| | hash算法类型 更多...
|
| |
|
| errcode_t | uapi_drv_cipher_symc_init (void) |
| | 对称加密初始化。
|
| |
| errcode_t | uapi_drv_cipher_symc_deinit (void) |
| | 对称加密去初始化。
|
| |
| errcode_t | uapi_drv_cipher_symc_create (uint32_t *symc_handle, const uapi_drv_cipher_symc_attr_t *symc_attr) |
| | 创建symc通道,并设置symc通道属性参数。
|
| |
| errcode_t | uapi_drv_cipher_symc_destroy (uint32_t symc_handle) |
| | 销毁symc通道。
|
| |
| errcode_t | uapi_drv_cipher_symc_set_config (uint32_t symc_handle, const uapi_drv_cipher_symc_ctrl_t *symc_ctrl) |
| | 设置算法参数。
|
| |
| errcode_t | uapi_drv_cipher_symc_get_config (uint32_t symc_handle, const uapi_drv_cipher_symc_ctrl_t *symc_ctrl) |
| | 获取算法参数。
|
| |
| errcode_t | uapi_drv_cipher_symc_attach (uint32_t symc_handle, uint32_t keyslot_handle) |
| | 将key的句柄关联到加解密句柄。
|
| |
| errcode_t | uapi_drv_cipher_symc_detach (uint32_t symc_handle, uint32_t keyslot_handle) |
| | 将key的句柄和加解密句柄解关联。
|
| |
| errcode_t | uapi_drv_cipher_symc_encrypt (uint32_t symc_handle, const uapi_drv_cipher_buf_attr_t *src_buf, const uapi_drv_cipher_buf_attr_t *dst_buf, uint32_t length) |
| | 将源地址数据加密,输出到目的地址。
|
| |
| errcode_t | uapi_drv_cipher_symc_decrypt (uint32_t symc_handle, const uapi_drv_cipher_buf_attr_t *src_buf, const uapi_drv_cipher_buf_attr_t *dst_buf, uint32_t length) |
| | 将源地址数据解密,输出到目的地址。
|
| |
| errcode_t | uapi_drv_cipher_symc_get_tag (uint32_t symc_handle, uint8_t *tag, uint32_t tag_length) |
| | 获取CCM或者GCM模式的标签值。
|
| |
| errcode_t | uapi_drv_cipher_mac_start (uint32_t *symc_handle, const uapi_drv_cipher_symc_mac_attr_t *mac_attr) |
| | 创建symc通道,并设置symc通道及算法参数。
|
| |
| errcode_t | uapi_drv_cipher_mac_update (uint32_t symc_handle, const uapi_drv_cipher_buf_attr_t *src_buf, uint32_t length) |
| | 计算mac值
|
| |
| errcode_t | uapi_drv_cipher_mac_finish (uint32_t symc_handle, uint8_t *mac, uint32_t *mac_length) |
| | 计算mac值
|
| |
| errcode_t | uapi_drv_cipher_hash_init (void) |
| | Hash计算初始化。
|
| |
| errcode_t | uapi_drv_cipher_hash_deinit (void) |
| | Hash计算去初始化。
|
| |
| errcode_t | uapi_drv_cipher_hash_start (uint32_t *hash_handle, const uapi_drv_cipher_hash_attr_t *hash_attr) |
| | 创建hash通道,并设置hash通道及算法参数。
|
| |
| errcode_t | uapi_drv_cipher_hash_update (uint32_t hash_handle, const uapi_drv_cipher_buf_attr_t *src_buf, const uint32_t len) |
| | hash计算
|
| |
| errcode_t | uapi_drv_cipher_hash_finish (uint32_t hash_handle, uint8_t *out, uint32_t *out_len) |
| | HASH计算获取摘要信息,并在计算成功的时候销毁hash句柄。
|
| |
| errcode_t | uapi_drv_cipher_hash_get (uint32_t hash_handle, uapi_drv_cipher_hash_clone_ctx_t *hash_clone_ctx) |
| | 获取HASH计算中间结果。
|
| |
| errcode_t | uapi_drv_cipher_hash_set (uint32_t hash_handle, const uapi_drv_cipher_hash_clone_ctx_t *hash_clone_ctx) |
| | 设置HASH计算中间结果。
|
| |
| errcode_t | uapi_drv_cipher_hash_destroy (uint32_t hash_handle) |
| | 销毁hash通道。
|
| |
| errcode_t | uapi_drv_cipher_pbkdf2 (const uapi_drv_cipher_kdf_pbkdf2_param_t *param, uint8_t *out, const uint32_t out_len) |
| | PBKDF2算法派生秘钥。
|
| |
| errcode_t | uapi_drv_cipher_hkdf_extract (uapi_drv_cipher_hkdf_extract_t *extract_param, uint8_t *prk, uint32_t *prk_length) |
| | 提取密钥。
|
| |
| errcode_t | uapi_drv_cipher_hkdf_expand (const uapi_drv_cipher_hkdf_expand_t *expand_param, uint8_t *okm, uint32_t okm_length) |
| | 拓展密钥。
|
| |
| errcode_t | uapi_drv_cipher_hkdf (uapi_drv_cipher_hkdf_t *hkdf_param, uint8_t *okm, uint32_t okm_length) |
| | HKDF,包括提取密钥和拓展密钥两步。
|
| |