harmony 鸿蒙CryptoSymKeyApi

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

CryptoSymKeyApi

Overview

Provides APIs for symmetric key operations.

Since: 12

Summary

Files

Name Description
crypto_sym_key.h Defines APIs for symmetric key operations.

Types

Name Description
typedef struct OH_CryptoSymKey OH_CryptoSymKey Defines a struct for a symmetric key.
typedef struct OH_CryptoSymKeyGenerator OH_CryptoSymKeyGenerator Defines a struct for a symmetric key generator.

Functions

Name Description
OH_Crypto_ErrCode OH_CryptoSymKeyGenerator_Create (const char *algoName, OH_CryptoSymKeyGenerator **ctx) Creates a symmetric key generator instance based on the given algorithm name.
OH_Crypto_ErrCode OH_CryptoSymKeyGenerator_Generate (OH_CryptoSymKeyGenerator *ctx, OH_CryptoSymKey **keyCtx) Randomly generates a symmetric key.
OH_Crypto_ErrCode OH_CryptoSymKeyGenerator_Convert (OH_CryptoSymKeyGenerator *ctx, const Crypto_DataBlob *keyData, OH_CryptoSymKey **keyCtx) Converts binary data into a symmetric key.
const char * OH_CryptoSymKeyGenerator_GetAlgoName (OH_CryptoSymKeyGenerator *ctx) Obtains the algorithm of a symmetric key generator instance.
void OH_CryptoSymKeyGenerator_Destroy (OH_CryptoSymKeyGenerator *ctx) Destroys a symmetric key generator instance.
const char * OH_CryptoSymKey_GetAlgoName (OH_CryptoSymKey *keyCtx) Obtains the algorithm of a symmetric key.
OH_Crypto_ErrCode OH_CryptoSymKey_GetKeyData (OH_CryptoSymKey *keyCtx, Crypto_DataBlob *out) Obtains symmetric key data from a key instance.
void OH_CryptoSymKey_Destroy (OH_CryptoSymKey *keyCtx) Destroys a symmetric key instance.

Type Description

OH_CryptoSymKey

typedef struct OH_CryptoSymKeyOH_CryptoSymKey

Description

Defines a struct for a symmetric key.

Since: 12

OH_CryptoSymKeyGenerator

typedef struct OH_CryptoSymKeyGeneratorOH_CryptoSymKeyGenerator

Description

Defines a struct for a symmetric key generator.

Since: 12

Function Description

OH_CryptoSymKey_Destroy()

void OH_CryptoSymKey_Destroy (OH_CryptoSymKey *keyCtx)

Description

Destroys a symmetric key instance.

Since: 12

Parameters

Name Description
keyCtx Pointer to the symmetric key instance to destroy.

OH_CryptoSymKey_GetAlgoName()

const char* OH_CryptoSymKey_GetAlgoName (OH_CryptoSymKey *keyCtx)

Description

Obtains the algorithm of a symmetric key.

Since: 12

Parameters

Name Description
keyCtx Pointer to the symmetric key instance.

Returns

Symmetric key algorithm obtained.

OH_CryptoSymKey_GetKeyData()

OH_Crypto_ErrCode OH_CryptoSymKey_GetKeyData (OH_CryptoSymKey *keyCtx, Crypto_DataBlob *out )

Description

Obtains symmetric key data from a key instance.

Since: 12

Parameters

Name Description
keyCtx Pointer to the symmetric key instance.
out Pointer to the data obtained.

Returns

OH_Crypto_ErrCode:

0: The operation is successful.

401: Invalid parameters are detected.

801: The operation is not supported.

17620001: A memory error occurred.

17630001: Failed to call an API of a third-party algorithm library.

OH_CryptoSymKeyGenerator_Convert()

OH_Crypto_ErrCode OH_CryptoSymKeyGenerator_Convert (OH_CryptoSymKeyGenerator *ctx, const Crypto_DataBlob *keyData, OH_CryptoSymKey **keyCtx )

Description

Converts binary data into a symmetric key.

Since: 12

Parameters

Name Description
ctx Pointer to the symmetric key generator instance.
keyData Pointer to the data to convert.
keyCtx Pointer to the symmetric key obtained.

Returns

OH_Crypto_ErrCode:

0: The operation is successful.

401: Invalid parameters are detected.

801: The operation is not supported.

17620001: A memory error occurred.

17630001: Failed to call an API of a third-party algorithm library.

OH_CryptoSymKeyGenerator_Create()

OH_Crypto_ErrCode OH_CryptoSymKeyGenerator_Create (const char *algoName, OH_CryptoSymKeyGenerator **ctx )

Description

Creates a symmetric key generator instance based on the given algorithm name.

Since: 12

Parameters

Name Description
algoName Pointer to the algorithm used to generate the symmetric key. For example, ‘AES256’.
ctx Double pointer to the symmetric key generator instance created.

Returns

OH_Crypto_ErrCode:

0: The operation is successful.

401: Invalid parameters are detected.

801: The operation is not supported.

17620001: A memory error occurred.

17630001: Failed to call an API of a third-party algorithm library.

OH_CryptoSymKeyGenerator_Destroy()

void OH_CryptoSymKeyGenerator_Destroy (OH_CryptoSymKeyGenerator *ctx)

Description

Destroys a symmetric key generator instance.

Since: 12

Parameters

Name Description
ctx Pointer to the symmetric key generator instance to destroy.

OH_CryptoSymKeyGenerator_Generate()

OH_Crypto_ErrCode OH_CryptoSymKeyGenerator_Generate (OH_CryptoSymKeyGenerator *ctx, OH_CryptoSymKey **keyCtx )

Description

Randomly generates a symmetric key.

Since: 12

Parameters

Name Description
ctx Pointer to the symmetric key generator instance.
keyCtx Pointer to the symmetric key created.

Returns

OH_Crypto_ErrCode:

0: The operation is successful.

401: Invalid parameters are detected.

801: The operation is not supported.

17620001: A memory error occurred.

17630001: Failed to call an API of a third-party algorithm library.

OH_CryptoSymKeyGenerator_GetAlgoName()

const char* OH_CryptoSymKeyGenerator_GetAlgoName (OH_CryptoSymKeyGenerator *ctx)

Description

Obtains the algorithm of a symmetric key generator instance.

Since: 12

Parameters

Name Description
ctx Pointer to the symmetric key generator instance.

Returns

Symmetric key algorithm obtained.

你可能感兴趣的鸿蒙文章

harmony 鸿蒙Crypto Architecture Kit (Crypto Architecture Service)

harmony 鸿蒙Crypto_DataBlob

harmony 鸿蒙CryptoAsymKeyApi

harmony 鸿蒙CryptoCommonApi

harmony 鸿蒙CryptoDigestApi

harmony 鸿蒙CryptoSignatureApi

harmony 鸿蒙CryptoSymCipherApi

harmony 鸿蒙crypto_asym_key.h

harmony 鸿蒙crypto_common.h

harmony 鸿蒙crypto_digest.h

0  赞