SM4分组密码算法速度测试

 

 

 Intel(R) Xeon(R) CPU E5-2678 v3 @ 2.50GHz

 

一百万组,耗时约5.5秒

for (int i = 0; i < 1* 1000* 1000; i++)
{
cipher(data, text, key);
}

[root@localhost sm4]# g++ main.cpp
[root@localhost sm4]# time ./a.out
59,52,98,C7,
C6,FD,27,1F,
04,02,F8,04,
C3,3D,3F,66,

real 0m5.378s
user 0m5.369s
sys 0m0.007s
[root@localhost sm4]#

 

一千万组,耗时约50秒

for (int i = 0; i < 10* 1000* 1000; i++)
{
cipher(data, text, key);
}

[root@localhost sm4]# g++ main.cpp
[root@localhost sm4]# time ./a.out
EF,0E,D9,14,
B9,30,6C,74,
15,DC,EB,71,
E5,54,C5,6A,

real 0m48.186s
user 0m48.157s
sys 0m0.020s
[root@localhost sm4]#

 

速度约为3MB/s,感觉有点慢。。。。。。。

> 16*10*1000*1000 / 1024 /1024/50
3.0517578125

================================================================

同样环境下测试aes128,一百万组,耗时约60秒

[root@localhost aes]# vim aes_test_time.cpp
[root@localhost aes]# g++ aes_test_time.cpp
[root@localhost aes]# time ./a.out
Nk =4 Nr =10
1000000

real 0m58.189s
user 0m58.110s
sys 0m0.053s
[root@localhost aes]# time ./a.out
Nk =4 Nr =10
1000000

real 0m59.773s
user 0m59.749s
sys 0m0.011s
[root@localhost aes]#

 

posted @ 2023-03-15 17:25  暴风城  阅读(424)  评论(0编辑  收藏  举报