harmony 鸿蒙crypto_rand.h

  • 2025-06-12
  • 浏览 (2)

crypto_rand.h

概述

定义随机数生成器API。

库: libohcrypto.so

引用文件:

系统能力: SystemCapability.Security.CryptoFramework

起始版本: 20

相关模块: CryptoRandApi

汇总

结构体

|名称|typedef关键字|描述| |–|–|–| |OH_CryptoRand|OH_CryptoRand|定义随机数生成器结构。|

函数

|名称|描述| |–|–| |OH_Crypto_ErrCode OH_CryptoRand_Create(OH_CryptoRand **ctx)|创建随机数生成器。| |OH_Crypto_ErrCode OH_CryptoRand_GenerateRandom(OH_CryptoRand *ctx, int len, Crypto_DataBlob *out)|生成随机数。| |const char *OH_CryptoRand_GetAlgoName(OH_CryptoRand *ctx)|获取随机数生成器实例的算法名称。| |OH_Crypto_ErrCode OH_CryptoRand_SetSeed(OH_CryptoRand *ctx, Crypto_DataBlob *seed)|设置随机数生成器的种子。| |void OH_CryptoRand_Destroy(OH_CryptoRand *ctx)|销毁随机数生成器实例。|

函数说明

OH_CryptoRand_Create()

OH_Crypto_ErrCode OH_CryptoRand_Create(OH_CryptoRand **ctx)

描述

创建随机数生成器。

起始版本: 20

参数:

|参数项|描述| |–|–| |OH_CryptoRand **ctx|指向随机数生成器实例的指针。|

返回:

|类型|说明| |–|–| |OH_Crypto_ErrCode|CRYPTO_SUCCESS = 0 : 操作成功。
CRYPTO_INVALID_PARAMS = 401 : 参数无效。
CRYPTO_NOT_SUPPORTED = 801 : 操作不支持。
CRYPTO_MEMORY_ERROR = 17620001 : 内存错误。
CRYPTO_OPERTION_ERROR = 17630001 : 调用三方算法库API出错。|

OH_CryptoRand_GenerateRandom()

OH_Crypto_ErrCode OH_CryptoRand_GenerateRandom(OH_CryptoRand *ctx, int len, Crypto_DataBlob *out)

描述

生成随机数。

起始版本: 20

参数:

|参数项|描述| |–|–| |OH_CryptoRand *ctx|随机数生成器实例。| |int len|表示生成随机数的长度,单位为byte,范围在[1, INT_MAX]。| |Crypto_DataBlob *out|用于获取随机数的指针。|

返回:

|类型|说明| |–|–| |OH_Crypto_ErrCode|CRYPTO_SUCCESS = 0 : 操作成功。
CRYPTO_INVALID_PARAMS = 401 : 参数无效。
CRYPTO_NOT_SUPPORTED = 801 : 操作不支持。
CRYPTO_MEMORY_ERROR = 17620001 : 内存错误。
CRYPTO_OPERTION_ERROR = 17630001 : 调用三方算法库API出错。|

OH_CryptoRand_GetAlgoName()

const char *OH_CryptoRand_GetAlgoName(OH_CryptoRand *ctx)

描述

获取随机数生成器实例的算法名称。

起始版本: 20

参数:

|参数项|描述| |–|–| |OH_CryptoRand *ctx|指向随机数生成器实例。|

返回:

|类型|说明| |–|–| |const char|返回随机数生成器实例的算法名称。|

OH_CryptoRand_SetSeed()

OH_Crypto_ErrCode OH_CryptoRand_SetSeed(OH_CryptoRand *ctx, Crypto_DataBlob *seed)

描述

设置随机数生成器的种子。

起始版本: 20

参数:

|参数项|描述| |–|–| |OH_CryptoRand *ctx|随机数生成器实例。| |Crypto_DataBlob *seed|种子数据。|

返回:

|类型|说明| |–|–| |OH_Crypto_ErrCode|CRYPTO_SUCCESS = 0 : 操作成功。
CRYPTO_INVALID_PARAMS = 401 : 参数无效。
CRYPTO_NOT_SUPPORTED = 801 : 操作不支持。
CRYPTO_MEMORY_ERROR = 17620001 : 内存错误。
CRYPTO_OPERTION_ERROR = 17630001 : 调用三方算法库API出错。|

OH_CryptoRand_Destroy()

void OH_CryptoRand_Destroy(OH_CryptoRand *ctx)

描述

销毁随机数生成器实例。

起始版本: 20

参数:

|参数项|描述| |–|–| |OH_CryptoRand *ctx|随机数生成器实例。|

你可能感兴趣的鸿蒙文章

harmony 鸿蒙Crypto Architecture Kit(加解密算法框架服务)

harmony 鸿蒙crypto_architecture_kit.h

harmony 鸿蒙crypto_asym_cipher.h

harmony 鸿蒙crypto_asym_key.h

harmony 鸿蒙crypto_common.h

harmony 鸿蒙Crypto_DataBlob

harmony 鸿蒙crypto_digest.h

harmony 鸿蒙crypto_kdf.h

harmony 鸿蒙crypto_key_agreement.h

harmony 鸿蒙crypto_mac.h

0  赞