【发布时间】:2016-10-14 12:30:49
【问题描述】:
最近我需要在我的机器上测试 openssl 套件的性能。我运行速度以获得一些性能数据。但是我想要特定的性能,例如加密时间和解密时间,但我得到的数据是
Doing aes-128 cbc for 3s on 16 size blocks: 24115540 aes-128 cbc's in 3.00s
我检查了 speed.c 文件,它是
if (doit[D_CBC_128_AES])
{
for (j=0; j<SIZE_NUM; j++)
{
print_message(names[D_CBC_128_AES],c[D_CBC_128_AES][j],lengths[j]);
Time_F(START);
for (count=0,run=1; COND(c[D_CBC_128_AES][j]); count++)
AES_cbc_encrypt(buf,buf,
(unsigned long)lengths[j],&aes_ks1,
iv,AES_ENCRYPT);// :O only encryption
d=Time_F(STOP);
print_result(D_CBC_128_AES,j,count,d);//xxxxx
}
}
所以它只做加密,不做解密。
为什么会这样? 如何获取算法及其模式的加密时间和解密时间? 我必须自己为所有算法编写代码吗? 如何获取特定算法中使用的 cpu 周期?
【问题讨论】:
标签: performance testing openssl