24 #ifndef __SHA1_HEADER__ 25 #define __SHA1_HEADER__ 27 #include "../cap/capdecl.h" 29 #ifdef __ENABLE_MOCANA_CRYPTO_INTERFACE__ 30 #include "../crypto_interface/crypto_interface_sha1_priv.h" 37 #define SHA_HASH_RESULT_SIZE (20) 38 #define SHA_HASH_BLOCK_SIZE (64) 40 #define SHA1_RESULT_SIZE (20) 41 #define SHA1_BLOCK_SIZE (64) 46 typedef struct SW_SHA1_CTX
56 sbyte4 hashBufferIndex;
57 ubyte hashBuffer[SHA1_BLOCK_SIZE];
59 #ifdef __ENABLE_MOCANA_MINIMUM_STACK__ 65 #ifndef __CUSTOM_SHA1_CONTEXT__ 66 typedef struct SW_SHA1_CTX shaDescr, shaDescrHS, SHA1_CTX;
120 MOC_EXTERN MSTATUS
SHA1_allocDigest (MOC_HASH(hwAccelDescr hwAccelCtx) BulkCtx *pp_context);
164 MOC_EXTERN MSTATUS
SHA1_freeDigest (MOC_HASH(hwAccelDescr hwAccelCtx) BulkCtx *pp_context);
216 MOC_EXTERN MSTATUS
SHA1_initDigest (MOC_HASH(hwAccelDescr hwAccelCtx) shaDescr *p_shaContext);
265 MOC_EXTERN MSTATUS
SHA1_updateDigest (MOC_HASH(hwAccelDescr hwAccelCtx) shaDescr *p_shaContext,
const ubyte *pData, ubyte4 dataLen);
319 MOC_EXTERN MSTATUS
SHA1_finalDigest (MOC_HASH(hwAccelDescr hwAccelCtx) shaDescr *p_shaContext, ubyte *pShaOutput);
377 MOC_EXTERN MSTATUS
SHA1_completeDigest(MOC_HASH(hwAccelDescr hwAccelCtx)
const ubyte *pData, ubyte4 dataLen, ubyte *pShaOutput);
391 MOC_EXTERN MSTATUS
SHA1_cloneCtx(MOC_HASH(hwAccelDescr hwAccelCtx) shaDescr *pDest, shaDescr *pSrc);
395 #if (!(defined(__DISABLE_MOCANA_RNG__))) 397 MOC_EXTERN MSTATUS SHA1_G(ubyte *pData, ubyte *pShaOutput);
399 MOC_EXTERN MSTATUS SHA1_GK(ubyte *pData, ubyte *pShaOutput);
402 #ifdef __SHA1_HARDWARE_HASH__ 403 MOC_EXTERN MSTATUS SHA1_initDigestHandShake (MOC_HASH(hwAccelDescr hwAccelCtx) shaDescrHS *p_shaContext);
404 MOC_EXTERN MSTATUS SHA1_updateDigestHandShake (MOC_HASH(hwAccelDescr hwAccelCtx) shaDescrHS*p_shaContext,
const ubyte *pData, ubyte4 dataLen);
405 MOC_EXTERN MSTATUS SHA1_finalDigestHandShake (MOC_HASH(hwAccelDescr hwAccelCtx) shaDescrHS *p_shaContext, ubyte *pShaOutput);
408 #define SHA1_initDigestHandShake SHA1_initDigest 409 #define SHA1_updateDigestHandShake SHA1_updateDigest 410 #define SHA1_finalDigestHandShake SHA1_finalDigest MOC_EXTERN MSTATUS SHA1_updateDigest(MOC_HASH(hwAccelDescr hwAccelCtx) shaDescr *p_shaContext, const ubyte *pData, ubyte4 dataLen)
Calculate and update intermediate SHA1 digest value.
MOC_EXTERN MSTATUS SHA1_completeDigest(MOC_HASH(hwAccelDescr hwAccelCtx) const ubyte *pData, ubyte4 dataLen, ubyte *pShaOutput)
Calculate single item's SHA1 digest value (with a single function call).
MOC_EXTERN MSTATUS SHA1_initDigest(MOC_HASH(hwAccelDescr hwAccelCtx) shaDescr *p_shaContext)
Initialize SHA1 operation context data structure.
MOC_EXTERN MSTATUS SHA1_freeDigest(MOC_HASH(hwAccelDescr hwAccelCtx) BulkCtx *pp_context)
Free (delete) SHA1 operation context data structure.
MOC_EXTERN MSTATUS SHA1_finalDigest(MOC_HASH(hwAccelDescr hwAccelCtx) shaDescr *p_shaContext, ubyte *pShaOutput)
Calculate final SHA1 digest value.
MOC_EXTERN MSTATUS SHA1_allocDigest(MOC_HASH(hwAccelDescr hwAccelCtx) BulkCtx *pp_context)
Allocate SHA1 operation context data structure.
MOC_EXTERN MSTATUS SHA1_cloneCtx(MOC_HASH(hwAccelDescr hwAccelCtx) shaDescr *pDest, shaDescr *pSrc)
Makes a clone of a previously allocated SHA1_CTX.