22#ifndef CRYPT_EAL_MAC_H
23#define CRYPT_EAL_MAC_H
27#include "bsl_params.h"
28#include "crypt_algid.h"
29#include "crypt_types.h"
35typedef struct EAL_MacCtx CRYPT_EAL_MacCtx;
CRYPT_MAC_AlgId
定义 crypt_algid.h:91
uint32_t CRYPT_EAL_GetMacLen(const CRYPT_EAL_MacCtx *ctx)
Through the context, obtain the output MAC length of the corresponding algorithm.
void CRYPT_EAL_MacDeinit(CRYPT_EAL_MacCtx *ctx)
Deinitialization function.
int32_t CRYPT_EAL_MacUpdate(CRYPT_EAL_MacCtx *ctx, const uint8_t *in, uint32_t len)
Continuously input the MAC data.
bool CRYPT_EAL_MacIsValidAlgId(CRYPT_MAC_AlgId id)
Check whether the id is Valid MAC algorithm ID.
int32_t CRYPT_EAL_MacSetParam(CRYPT_EAL_MacCtx *ctx, const BSL_Param *param)
Set algorithm parameters.
int32_t CRYPT_EAL_MacCtrl(CRYPT_EAL_MacCtx *ctx, int32_t type, void *in, uint32_t len)
Set algorithm parameters. This API must be called after the CRYPT_EAL_MacInit API is called....
CRYPT_EAL_MacCtx * CRYPT_EAL_MacNewCtx(CRYPT_MAC_AlgId id)
Apply for a MAC context.
int32_t CRYPT_EAL_MacFinal(CRYPT_EAL_MacCtx *ctx, uint8_t *out, uint32_t *len)
Output the MAC result.
int32_t CRYPT_EAL_MacCopyCtx(CRYPT_EAL_MacCtx *to, const CRYPT_EAL_MacCtx *from)
Copy the MAC context.
int32_t CRYPT_EAL_MacInit(CRYPT_EAL_MacCtx *ctx, const uint8_t *key, uint32_t len)
CRYPT_EAL_MacCtx * CRYPT_EAL_ProviderMacNewCtx(CRYPT_EAL_LibCtx *libCtx, int32_t algId, const char *attrName)
Create an MAC context in the providers.
int32_t CRYPT_EAL_MacReinit(CRYPT_EAL_MacCtx *ctx)
Re-initialize with the information retained in ctx.
void CRYPT_EAL_MacFreeCtx(CRYPT_EAL_MacCtx *ctx)
Release the MAC context memory.
CRYPT_EAL_MacCtx * CRYPT_EAL_MacDupCtx(const CRYPT_EAL_MacCtx *from)
Dup the MAC context.