标签:blog 支持 示例 otto 为什么 速度 编码 时间 round
测试加密算法的性能。
支持的算法有:
openssl speed [md2] [mdc2] [md5] [hmac] [sha1] [rmd160] [idea-cbc] [rc2-cbc] [rc5-cbc] [bf-cbc] [des-cbc] [des-ede3] [rc4] [rsa512] [rsa1024] [rsa2048] [rsa4096] [dsa512] [dsa1024] [dsa2048] [idea] [rc2] [des] [rsa] [blowfish]
为什么没有base64算法呢?
测试速度好几秒一个指标,很慢。如果不指定参数将测试所有支持的算法,所以会花很久时间,我的虚拟机上花了十多分钟才测试完所有的算法性能。
例如测试下,dsa512、rsa512和rsa2048加密速度如何。
[root@xuexi tmp]# openssl speed dsa512 rsa512 rsa2048 Doing 512 bit private rsa‘s for 10s: 107496 512 bit private RSA‘s in 9.99s Doing 512 bit public rsa‘s for 10s: 1425095 512 bit public RSA‘s in 10.00s Doing 2048 bit private rsa‘s for 10s: 4623 2048 bit private RSA‘s in 9.99s Doing 2048 bit public rsa‘s for 10s: 153395 2048 bit public RSA‘s in 9.99s Doing 512 bit sign dsa‘s for 10s: 102089 512 bit DSA signs in 10.00s Doing 512 bit verify dsa‘s for 10s: 121654 512 bit DSA verify in 9.99s sign verify sign/s verify/s rsa 512 bits 0.000093s 0.000007s 10760.4 142509.5 rsa 2048 bits 0.002161s 0.000065s 462.8 15354.9 sign verify sign/s verify/s dsa 512 bits 0.000098s 0.000082s 10208.9 12177.6
在10秒时间内,rsa512的私钥处理107496单位,而rsa2048仅处理4623单位,慢了20多倍。
再看签名性能,dsa算法只支持签名不支持加密,而rsa支持加密也支持签名。从上面的结果中可以看到rsa512的签名速度为每秒10760.4,而dsa512的速度为10208.9,速度相差不大。
生成伪随机数。
openssl rand [-out file] [-rand file(s)] [-base64] [-hex] num
-base64和-hex分别是生成不同编码格式的随机数。
示例:
[root@xuexi tmp]# openssl rand -base64 30;openssl rand -hex 30;openssl rand 30 azTkjzvILtI1ODqREGHgcOnzxTz6SmVUuQUjWXiP 4a64f49084d1fc97085acba1c88b963537511cebf0f4d20e8407ff82df26 z28?Z[root@xuexi tmp]#
可以看到,不指定-base64或-hex时生成的随机数是乱码随机数(其实是2进制),且没有\n符号。
标签:blog 支持 示例 otto 为什么 速度 编码 时间 round
原文地址:http://www.cnblogs.com/f-ck-need-u/p/6089821.html