harmony 鸿蒙crypto_kdf.h
crypto_kdf.h
概述
定义密钥派生接口。
库: libohcrypto.so
引用文件:
系统能力: SystemCapability.Security.CryptoFramework
起始版本: 20
相关模块: CryptoKdfApi
汇总
结构体
|名称|typedef关键字|描述| |–|–|–| |OH_CryptoKdf|OH_CryptoKdf|定义密钥派生函数(KDF)结构。| |OH_CryptoKdfParams|OH_CryptoKdfParams|定义密钥派生函数(KDF)参数结构。|
枚举
|名称|typedef关键字|描述| |–|–|–| |CryptoKdf_ParamType|CryptoKdf_ParamType|定义密钥派生函数(KDF)参数类型。|
函数
|名称|描述| |–|–| |OH_Crypto_ErrCode OH_CryptoKdfParams_Create(const char *algoName, OH_CryptoKdfParams **params)|创建密钥派生函数(KDF)参数。| |OH_Crypto_ErrCode OH_CryptoKdfParams_SetParam(OH_CryptoKdfParams *params, CryptoKdf_ParamType type,Crypto_DataBlob *value)|设置密钥派生函数(KDF)参数。| |void OH_CryptoKdfParams_Destroy(OH_CryptoKdfParams *params)|销毁密钥派生函数(KDF)参数。| |OH_Crypto_ErrCode OH_CryptoKdf_Create(const char *algoName, OH_CryptoKdf **ctx)|创建密钥派生函数(KDF)实例。| |OH_Crypto_ErrCode OH_CryptoKdf_Derive(OH_CryptoKdf *ctx, const OH_CryptoKdfParams *params, int keyLen,Crypto_DataBlob *key)|派生密钥。| |void OH_CryptoKdf_Destroy(OH_CryptoKdf *ctx)|销毁密钥派生函数(KDF)实例。|
枚举类型说明
CryptoKdf_ParamType
enum CryptoKdf_ParamType
描述
定义密钥派生函数(KDF)参数类型。
起始版本: 20
|枚举项|描述| |–|–| |CRYPTO_KDF_KEY_DATABLOB = 0|表示KDF的密钥或密码。| |CRYPTO_KDF_SALT_DATABLOB = 1|表示KDF的盐值。| |CRYPTO_KDF_INFO_DATABLOB = 2|表示KDF的信息。| |CRYPTO_KDF_ITER_COUNT_INT = 3|表示PBKDF2的迭代次数。| |CRYPTO_KDF_SCRYPT_N_UINT64 = 4|表示SCRYPT KDF的n参数。| |CRYPTO_KDF_SCRYPT_R_UINT64 = 5|表示SCRYPT KDF的r参数。| |CRYPTO_KDF_SCRYPT_P_UINT64 = 6|表示SCRYPT KDF的p参数。| |CRYPTO_KDF_SCRYPT_MAX_MEM_UINT64 = 7|表示SCRYPT KDF的最大内存使用量。|
函数说明
OH_CryptoKdfParams_Create()
OH_Crypto_ErrCode OH_CryptoKdfParams_Create(const char *algoName, OH_CryptoKdfParams **params)
描述
创建密钥派生函数(KDF)参数。
起始版本: 20
参数:
|参数项|描述|
|–|–|
|const char *algoName|KDF算法名称。
例如”HKDF|SHA384|EXTRACT_AND_EXPAND”、”PBKDF2|SHA384”。|
|OH_CryptoKdfParams **params|KDF参数。|
返回:
|类型|说明|
|–|–|
|OH_Crypto_ErrCode|CRYPTO_SUCCESS = 0 : 操作成功。
CRYPTO_INVALID_PARAMS = 401 : 参数无效。
CRYPTO_NOT_SUPPORTED = 801 : 操作不支持。
CRYPTO_MEMORY_ERROR = 17620001 : 内存错误。
CRYPTO_OPERTION_ERROR = 17630001 : 调用三方算法库API出错。|
OH_CryptoKdfParams_SetParam()
OH_Crypto_ErrCode OH_CryptoKdfParams_SetParam(OH_CryptoKdfParams *params, CryptoKdf_ParamType type,Crypto_DataBlob *value)
描述
设置密钥派生函数(KDF)参数。
起始版本: 20
参数:
|参数项|描述| |–|–| |OH_CryptoKdfParams *params|KDF参数。| |CryptoKdf_ParamType type|KDF参数类型。| |Crypto_DataBlob *value|KDF参数值。|
返回:
|类型|说明|
|–|–|
|OH_Crypto_ErrCode| CRYPTO_SUCCESS = 0 : 操作成功。
CRYPTO_INVALID_PARAMS = 401 : 参数无效。
CRYPTO_NOT_SUPPORTED = 801 : 操作不支持。
CRYPTO_MEMORY_ERROR = 17620001 : 内存错误。
CRYPTO_OPERTION_ERROR = 17630001 : 调用三方算法库API出错。|
OH_CryptoKdfParams_Destroy()
void OH_CryptoKdfParams_Destroy(OH_CryptoKdfParams *params)
描述
销毁密钥派生函数(KDF)参数。
起始版本: 20
参数:
|参数项|描述| |–|–| |OH_CryptoKdfParams *params|KDF参数。|
OH_CryptoKdf_Create()
OH_Crypto_ErrCode OH_CryptoKdf_Create(const char *algoName, OH_CryptoKdf **ctx)
描述
创建密钥派生函数(KDF)实例。
起始版本: 20
参数:
|参数项|描述| |–|–| |const char *algoName|KDF算法名称。| |OH_CryptoKdf **ctx|KDF实例。|
返回:
|类型|说明|
|–|–|
|OH_Crypto_ErrCode| CRYPTO_SUCCESS = 0 : 操作成功。
CRYPTO_INVALID_PARAMS = 401 : 参数无效。
CRYPTO_NOT_SUPPORTED = 801 : 操作不支持。
CRYPTO_MEMORY_ERROR = 17620001 : 内存错误。
CRYPTO_OPERTION_ERROR = 17630001 : 调用三方算法库API出错。|
OH_CryptoKdf_Derive()
OH_Crypto_ErrCode OH_CryptoKdf_Derive(OH_CryptoKdf *ctx, const OH_CryptoKdfParams *params, int keyLen,Crypto_DataBlob *key)
描述
派生密钥。
起始版本: 20
参数:
|参数项|描述| |–|–| |OH_CryptoKdf *ctx|KDF实例。| |const OH_CryptoKdfParams *params|KDF参数。| |int keyLen|密钥派生长度。| |Crypto_DataBlob key|派生出的密钥。|
返回:
|类型|说明|
|–|–|
|OH_Crypto_ErrCode| CRYPTO_SUCCESS = 0 : 操作成功。
CRYPTO_INVALID_PARAMS = 401 : 参数无效。
CRYPTO_NOT_SUPPORTED = 801 : 操作不支持。
CRYPTO_MEMORY_ERROR = 17620001 : 内存错误。
CRYPTO_OPERTION_ERROR = 17630001 : 调用三方算法库API出错。|
OH_CryptoKdf_Destroy()
void OH_CryptoKdf_Destroy(OH_CryptoKdf *ctx)
描述
销毁密钥派生函数(KDF)实例。
起始版本: 20
参数:
|参数项|描述| |–|–| |OH_CryptoKdf *ctx|KDF实例。|
你可能感兴趣的鸿蒙文章
harmony 鸿蒙Crypto Architecture Kit(加解密算法框架服务)
harmony 鸿蒙crypto_architecture_kit.h
harmony 鸿蒙crypto_asym_cipher.h
- 所属分类: 后端技术
- 本文标签:
热门推荐
-
2、 - 优质文章
-
3、 gate.io
-
8、 golang
-
9、 openharmony
-
10、 Vue中input框自动聚焦