14 #ifndef __SHA512_HEADER__ 15 #define __SHA512_HEADER__ 17 #include "../cap/capdecl.h" 19 #ifdef __ENABLE_MOCANA_CRYPTO_INTERFACE__ 20 #include "../crypto_interface/crypto_interface_sha384_priv.h" 21 #include "../crypto_interface/crypto_interface_sha512_priv.h" 28 #define SHA512_CTX MOC_SHA512_CTX 30 #define SHA512_RESULT_SIZE (64) 31 #define SHA512_BLOCK_SIZE (128) 33 #define SHA384_RESULT_SIZE (48) 34 #define SHA384_BLOCK_SIZE (128) 39 typedef struct SHA512_CTX
49 sbyte4 hashBufferIndex;
50 ubyte hashBuffer[SHA512_BLOCK_SIZE];
52 #ifdef __ENABLE_MOCANA_MINIMUM_STACK__ 56 } SHA512_CTX, SHA384_CTX;
58 typedef SHA512_CTX sha384Descr;
59 typedef SHA512_CTX sha512Descr;
64 #ifndef __DISABLE_MOCANA_SHA512__ 117 MOC_EXTERN MSTATUS
SHA512_allocDigest (MOC_HASH(hwAccelDescr hwAccelCtx) BulkCtx *pp_shaContext);
163 MOC_EXTERN MSTATUS
SHA512_freeDigest (MOC_HASH(hwAccelDescr hwAccelCtx) BulkCtx *pp_shaContext);
216 MOC_EXTERN MSTATUS
SHA512_initDigest (MOC_HASH(hwAccelDescr hwAccelCtx) SHA512_CTX *pCtx);
266 MOC_EXTERN MSTATUS
SHA512_updateDigest (MOC_HASH(hwAccelDescr hwAccelCtx) SHA512_CTX *pCtx,
const ubyte *pData, ubyte4 dataLen);
322 MOC_EXTERN MSTATUS
SHA512_finalDigest (MOC_HASH(hwAccelDescr hwAccelCtx) SHA512_CTX *pCtx, ubyte *pOutput);
383 MOC_EXTERN MSTATUS
SHA512_completeDigest(MOC_HASH(hwAccelDescr hwAccelCtx)
const ubyte *pData, ubyte4 dataLen, ubyte *pShaOutput);
397 MOC_EXTERN MSTATUS
SHA512_cloneCtx(MOC_HASH(hwAccelDescr hwAccelCtx) SHA512_CTX *pDest, SHA512_CTX *pSrc);
400 #ifndef __DISABLE_MOCANA_SHA384__ 448 MOC_EXTERN MSTATUS
SHA384_allocDigest (MOC_HASH(hwAccelDescr hwAccelCtx) BulkCtx *pp_shaContext);
501 MOC_EXTERN MSTATUS
SHA384_freeDigest (MOC_HASH(hwAccelDescr hwAccelCtx) BulkCtx *pp_shaContext);
561 MOC_EXTERN MSTATUS
SHA384_updateDigest (MOC_HASH(hwAccelDescr hwAccelCtx) SHA512_CTX *pCtx,
const ubyte *pData, ubyte4 dataLen);
570 MOC_EXTERN MSTATUS
SHA512_allocDigest (MOC_HASH(hwAccelDescr hwAccelCtx) BulkCtx *pp_shaContext);
571 MOC_EXTERN MSTATUS
SHA512_freeDigest (MOC_HASH(hwAccelDescr hwAccelCtx) BulkCtx *pp_shaContext);
572 MOC_EXTERN MSTATUS
SHA512_updateDigest (MOC_HASH(hwAccelDescr hwAccelCtx) SHA512_CTX *pCtx,
const ubyte *pData, ubyte4 dataLen);
573 #define SHA384_allocDigest SHA512_allocDigest 574 #define SHA384_freeDigest SHA512_freeDigest 575 #define SHA384_updateDigest SHA512_updateDigest 631 MOC_EXTERN MSTATUS
SHA384_initDigest (MOC_HASH(hwAccelDescr hwAccelCtx) SHA384_CTX *pCtx);
687 MOC_EXTERN MSTATUS
SHA384_finalDigest (MOC_HASH(hwAccelDescr hwAccelCtx) SHA384_CTX *pCtx, ubyte *pOutput);
748 MOC_EXTERN MSTATUS
SHA384_completeDigest(MOC_HASH(hwAccelDescr hwAccelCtx)
const ubyte *pData, ubyte4 dataLen, ubyte *pShaOutput);
762 MOC_EXTERN MSTATUS
SHA384_cloneCtx(MOC_HASH(hwAccelDescr hwAccelCtx) SHA384_CTX *pDest, SHA384_CTX *pSrc);
MOC_EXTERN MSTATUS SHA512_freeDigest(MOC_HASH(hwAccelDescr hwAccelCtx) BulkCtx *pp_shaContext)
Free (delete) SHA512 operation context data structure.
MOC_EXTERN MSTATUS SHA512_completeDigest(MOC_HASH(hwAccelDescr hwAccelCtx) const ubyte *pData, ubyte4 dataLen, ubyte *pShaOutput)
Calculate single item's SHA512 digest value (with a single function call).
MOC_EXTERN MSTATUS SHA512_allocDigest(MOC_HASH(hwAccelDescr hwAccelCtx) BulkCtx *pp_shaContext)
Allocate SHA512 operation context data structure.
MOC_EXTERN MSTATUS SHA384_finalDigest(MOC_HASH(hwAccelDescr hwAccelCtx) SHA384_CTX *pCtx, ubyte *pOutput)
Calculate final SHA384 digest value.
MOC_EXTERN MSTATUS SHA512_cloneCtx(MOC_HASH(hwAccelDescr hwAccelCtx) SHA512_CTX *pDest, SHA512_CTX *pSrc)
Makes a clone of a previously allocated SHA512_CTX.
MOC_EXTERN MSTATUS SHA384_allocDigest(MOC_HASH(hwAccelDescr hwAccelCtx) BulkCtx *pp_shaContext)
Allocate SHA384 operation context data structure.
MOC_EXTERN MSTATUS SHA512_initDigest(MOC_HASH(hwAccelDescr hwAccelCtx) SHA512_CTX *pCtx)
Initialize SHA512 operation context data structure.
MOC_EXTERN MSTATUS SHA384_completeDigest(MOC_HASH(hwAccelDescr hwAccelCtx) const ubyte *pData, ubyte4 dataLen, ubyte *pShaOutput)
Calculate single item's SHA384 digest value (with a single function call).
MOC_EXTERN MSTATUS SHA384_initDigest(MOC_HASH(hwAccelDescr hwAccelCtx) SHA384_CTX *pCtx)
Initialize SHA384 operation context data structure.
MOC_EXTERN MSTATUS SHA384_freeDigest(MOC_HASH(hwAccelDescr hwAccelCtx) BulkCtx *pp_shaContext)
Free (delete) SHA384 operation context data structure.
MOC_EXTERN MSTATUS SHA384_cloneCtx(MOC_HASH(hwAccelDescr hwAccelCtx) SHA384_CTX *pDest, SHA384_CTX *pSrc)
Makes a clone of a previously allocated SHA384_CTX.
MOC_EXTERN MSTATUS SHA512_finalDigest(MOC_HASH(hwAccelDescr hwAccelCtx) SHA512_CTX *pCtx, ubyte *pOutput)
Calculate final SHA512 digest value.
MOC_EXTERN MSTATUS SHA384_updateDigest(MOC_HASH(hwAccelDescr hwAccelCtx) SHA512_CTX *pCtx, const ubyte *pData, ubyte4 dataLen)
Calculate and update intermediate SHA384 digest value.
MOC_EXTERN MSTATUS SHA512_updateDigest(MOC_HASH(hwAccelDescr hwAccelCtx) SHA512_CTX *pCtx, const ubyte *pData, ubyte4 dataLen)
Calculate and update intermediate SHA512 digest value.