加密算法比较
名称
|
密钥长度
|
运算速度
|
安全性
|
资源消耗
|
DES
|
56位
|
较快
|
低
|
中
|
3DES
|
112位或168位
|
慢
|
中
|
高
|
AES
|
128、192、256位
|
快
|
高
|
低
|
名称
|
成熟度
|
安全性(取决于密钥长度)
|
运算速度
|
资源消耗
|
RSA
|
高
|
高
|
慢
|
高
|
DSA
|
高
|
高
|
慢
|
只能用于数字签名
|
ECC
|
低
|
高
|
快
|
低(计算量小,存储空间占用小,带宽要求低)
|
名称
|
安全性
|
速度
|
SHA-1
|
高
|
慢
|
MD5
|
中
|
快
|
名称
|
密钥管理
|
安全性
|
速度
|
对称算法
|
比较难,不适合互联网,一般用于内部系统
|
中
|
快好几个数量级(软件加解密速度至少快100倍,每秒可以加解密数M比特数据),适合大数据量的加解密处理
|
非对称算法
|
密钥容易管理
|
高
|
慢,适合小数据量加解密或数据签名
|
速度排名(个人估测,未验证):IDEA <DES <GASTI28<GOST<AES<RC4<TEA<Blowfish
简单的加密设计: 用密钥对原文做 异或,置换,代换,移位
名称
|
数据大小(MB)
|
时间(s)
|
平均速度MB/S
|
评价
|
DES
|
256
|
10.5
|
22.5
|
低
|
3DES
|
256
|
12
|
12
|
低
|
AES(256-bit)
|
256
|
5
|
51.2
|
中
|
Blowfish
|
256
|
3.7
|
64
|
高
|
表5-3 单钥密码算法性能比较表
|
||||||||||||||||||||||||||||||||||||||||||||||||
|
常见加密算法
1、DES(Data Encryption Standard):对称算法,数据加密标准,速度较快,适用于加密大量数据的场合;
2、3DES(Triple DES):是基于DES的对称算法,对一块数据用三个不同的密钥进行三次加密,强度更高;
3、RC2和RC4:对称算法,用变长密钥对大量数据进行加密,比 DES 快;
4、IDEA(International Data Encryption Algorithm)国际数据加密算法,使用 128 位密钥提供非常强的安全性;
5、RSA:由 RSA 公司发明,是一个支持变长密钥的公共密钥算法,需要加密的文件块的长度也是可变的,非对称算法;
6、DSA(Digital Signature Algorithm):数字签名算法,是一种标准的 DSS(数字签名标准),严格来说不算加密算法;
7、AES(Advanced Encryption Standard):高级加密标准,对称算法,是下一代的加密算法标准,速度快,安全级别高,在21世纪AES 标准的一个实现是 Rijndael 算法;
8、BLOWFISH,它使用变长的密钥,长度可达448位,运行速度很快;
9、MD5:严格来说不算加密算法,只能说是摘要算法;
10、PKCS:The Public-Key Cryptography Standards (PKCS)是由美国RSA数据安全公司及其合作伙伴制定的一组公钥密码学标准,其中包括证书申请、证书更新、证书作废表发布、扩展证书内容以及数字签名、数字信封的格式等方面的一系列相关协议。
11、SSF33,SSF28,SCB2(SM1):国家密码局的隐蔽不公开的商用算法,在国内民用和商用的,除这些都不容许使用外,其他的都可以使用;
12、ECC(Elliptic Curves Cryptography):椭圆曲线密码编码学。
13、TEA(Tiny Encryption Algorithm)简单高效的加密算法,加密解密速度快,实现简单。但安全性不如DES,QQ一直用tea加密