Ejemplo n.º 1
0
static void check_cmac(const void *key, size_t nkey,
                       const void *msg, size_t nmsg,
                       const void *wanttag, size_t ntag)
{
    uint8_t gottag[16];

    TEST_CHECK(cf_aes.blocksz == ntag);

    cf_aes_context aes;
    cf_aes_init(&aes, key, nkey);

    cf_cmac cmac;
    cf_cmac_init(&cmac, &cf_aes, &aes);
    cf_cmac_sign(&cmac, msg, nmsg, gottag);

    TEST_CHECK(memcmp(gottag, wanttag, cf_aes.blocksz) == 0);
}
Ejemplo n.º 2
0
void cf_cmac_stream_init(cf_cmac_stream *ctx, const cf_prp *prp, void *prpctx)
{
  cf_cmac_init(&ctx->cmac, prp, prpctx);
  cf_cmac_stream_reset(ctx);
}