Example #1
0
void hb_hmac_sha256_final(hmac_sha256_ctx *ctx, unsigned char *mac,
                       unsigned int mac_size)
{
    unsigned char digest_inside[SHA256_DIGEST_SIZE];
    unsigned char mac_temp[SHA256_DIGEST_SIZE];

    hb_sha256_final(&ctx->ctx_inside, digest_inside);
    hb_sha256_update(&ctx->ctx_outside, digest_inside, SHA256_DIGEST_SIZE);
    hb_sha256_final(&ctx->ctx_outside, mac_temp);
    memcpy(mac, mac_temp, mac_size);
}
Example #2
0
File: sha2.c Project: xharbour/core
void hb_sha256( const void * message, unsigned int len, unsigned char * digest )
{
   sha256_ctx ctx;

   hb_sha256_init( &ctx );
   hb_sha256_update( &ctx, message, len );
   hb_sha256_final( &ctx, digest );
}