我用纯C编写了一个简单的代码来测试Openssl的AES-CBC-256和RC2-CBC-128。我的测试循环如下所示:
for(i=0; i<tests; i++)
{
timer_start();
for(j=0; j<its; j++)
{
RC2_cbc_encrypt(input, enc_out, length, &key, iv_enc, RC2_ENCRYPT);
}
stop = timer_stop();
printf("%f\n",(stop / its) * 1000);
}
for(i=0; i<tests; i++)
{
timer_start();
for(j=0; j<its; j++)
{
AES_cbc_encrypt(input, enc_out, length, &enc_key, iv_enc, AES_ENCRYPT);
}
stop = timer_stop();
printf("%f\n",(stop / its) * 1000);
}但是发生了一些错误,在我测试代码的每台机器上,都得到了奇怪的结果,也就是说,每次AES都比RC2快。有什么问题吗?我使用getrusage来测量时间(在计时器中)。
AES:
0.010898
0.010471
0.010531
RC2:
0.023261
0.023392
0.023224发布于 2014-12-03 21:02:23
没什么不对。AES更快,因为:
https://stackoverflow.com/questions/27281451
复制相似问题