harmony 鸿蒙crypto_digest.h

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

crypto_digest.h

概述

定义摘要算法API。

库: libohcrypto.so

引用文件:

系统能力: SystemCapability.Security.CryptoFramework

起始版本: 12

相关模块: CryptoDigestApi

汇总

结构体

|名称|typedef关键字|描述| |–|–|–| |OH_CryptoDigest|OH_CryptoDigest|定义摘要结构体。|

函数

|名称|描述| |–|–| |OH_Crypto_ErrCode OH_CryptoDigest_Create(const char *algoName, OH_CryptoDigest **ctx)|根据给定的算法名称创建一个摘要实例。| |OH_Crypto_ErrCode OH_CryptoDigest_Update(OH_CryptoDigest *ctx, Crypto_DataBlob *in)|传入消息进行摘要更新计算。| |OH_Crypto_ErrCode OH_CryptoDigest_Final(OH_CryptoDigest *ctx, Crypto_DataBlob *out)|计算最终摘要。| |uint32_t OH_CryptoDigest_GetLength(OH_CryptoDigest *ctx)|获取摘要长度。| |const char *OH_CryptoDigest_GetAlgoName(OH_CryptoDigest *ctx)|获取摘要算法。| |void OH_DigestCrypto_Destroy(OH_CryptoDigest *ctx)|销毁摘要实例。|

函数说明

OH_CryptoDigest_Create()

OH_Crypto_ErrCode OH_CryptoDigest_Create(const char *algoName, OH_CryptoDigest **ctx)

描述

根据给定的算法名称创建一个摘要实例。

起始版本: 12

参数:

|参数项|描述| |–|–| |const char *algoName|用于生成摘要上下文的算法名称。
例如”SHA256”。| |OH_CryptoDigest **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_CryptoDigest_Update()

OH_Crypto_ErrCode OH_CryptoDigest_Update(OH_CryptoDigest *ctx, Crypto_DataBlob *in)

描述

传入消息进行摘要更新计算。

起始版本: 12

参数:

|参数项|描述| |–|–| |OH_CryptoDigest *ctx|指向摘要实例。| |Crypto_DataBlob *in|传入的消息。|

返回:

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

参考:

OH_CryptoDigest_Final

OH_CryptoDigest_Final()

OH_Crypto_ErrCode OH_CryptoDigest_Final(OH_CryptoDigest *ctx, Crypto_DataBlob *out)

描述

计算最终摘要。

起始版本: 12

参数:

|参数项|描述| |–|–| |OH_CryptoDigest *ctx|指向摘要实例。| |Crypto_DataBlob *out|返回的Md的计算结果。|

返回:

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

参考:

OH_CryptoDigest_Update

OH_CryptoDigest_GetLength()

uint32_t OH_CryptoDigest_GetLength(OH_CryptoDigest *ctx)

描述

获取摘要长度。

起始版本: 12

参数:

|参数项|描述| |–|–| |OH_CryptoDigest *ctx|指向摘要实例。|

返回:

|类型|说明| |–|–| |uint32_t|摘要长度。|

OH_CryptoDigest_GetAlgoName()

const char *OH_CryptoDigest_GetAlgoName(OH_CryptoDigest *ctx)

描述

获取摘要算法。

起始版本: 12

参数:

|参数项|描述| |–|–| |OH_CryptoDigest *ctx|指向摘要实例。|

返回:

|类型|说明| |–|–| |const char|返回摘要算法名。|

OH_DigestCrypto_Destroy()

void OH_DigestCrypto_Destroy(OH_CryptoDigest *ctx)

描述

销毁摘要实例。

起始版本: 12

参数:

|参数项|描述| |–|–| |OH_CryptoDigest *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_kdf.h

harmony 鸿蒙crypto_key_agreement.h

harmony 鸿蒙crypto_mac.h

harmony 鸿蒙crypto_rand.h

0  赞