19#include "hitls_build.h"
20#ifdef HITLS_CRYPTO_HKDF
23#include "crypt_local_types.h"
24#include "bsl_params.h"
30typedef struct CryptHkdfCtx CRYPT_HKDF_Ctx;
39CRYPT_HKDF_Ctx* CRYPT_HKDF_NewCtx(
void);
50CRYPT_HKDF_Ctx* CRYPT_HKDF_NewCtxEx(
void *libCtx, int32_t algId);
62int32_t CRYPT_HKDF_SetParam(CRYPT_HKDF_Ctx *ctx,
const BSL_Param *param);
75int32_t CRYPT_HKDF_Derive(CRYPT_HKDF_Ctx *ctx, uint8_t *out, uint32_t len);
86int32_t CRYPT_HKDF_Deinit(CRYPT_HKDF_Ctx *ctx);
94void CRYPT_HKDF_FreeCtx(CRYPT_HKDF_Ctx *ctx);
103CRYPT_HKDF_Ctx *CRYPT_HKDF_DupCtx(
const CRYPT_HKDF_Ctx *ctx);