0%

常见密码算法复习

1、密码算法、密钥

加密算法:从明文生成密文

解密算法:从密文还原出明文

密钥:同现实世界中的“钥匙”功能一样,是参与加解密过程的关键部件

加密算法示意图

2、对称密码、公钥密码、散列函数

2.1 对称加密算法

对称密码;加密密钥和解密密钥相同

对称加密算法示意图

AES,广泛使用的分组加密算法,安全性高,效率快。分组长度固定为128bit,密钥长度和对应迭代轮速有三种情况,分别为:128bit–>10轮、192bit–>12轮、256bit–>14轮,密钥强度与其密钥长度相同。

DES,早期的分组加密算法,现在已逐渐被AES取代。该密码算法分组长度为64bit,密钥长度为64bit(其中8bit是奇偶校验位,有效密钥长度为56bit),迭代轮数为16轮,该算法已经被认为是高风险算法。密钥强度为56bit,已被淘汰。

3DES,通过对DES算法进行三次加密来提高安全性。分组长度为64bit,密钥长度为192bit(其中24bit为奇偶校验位,有效密钥长度为168bit),迭代轮数为48。密钥强度为112bit(2023年后淘汰)。

Blowfish,一种可变密钥长度的分组密码算法,适用于多种应用场景。分组长度固定为64bit,密钥长度顾名思义是变长的,范围是32bit-448bit,迭代轮数为16。

Twofish,Blowfish的后继算法,支持较长的密钥长度,安全性较高。分组长度为128bit,密钥长度支持128bit、192bit、256bit,迭代轮数为16轮。

IDEA,国际数据加密算法,是一种对称密钥分组密码,由James Massey和来学嘉设计。分组长度固定为64bit,密钥长度为128bit,该算法进行8.5轮迭代,前8轮为完整的加密轮,第9轮为简化的半轮。

SM1,类似于AES的分组加密算法,用于数据加密,适用于硬件实现。分组长度和密钥长度均为128bit,加密轮数为32。

SM4,分组密码算法,安全性高,适用于软件实现。分组长度和密钥长度均为128bit,加密轮数为32。

RC4,流密码算法,曾广泛用于SSL/TLS协议,但由于安全性问题逐渐被淘汰。

ZUC,祖冲之密码算法,也是流密码算法。密钥长度为128bit,密钥强度为128bit。

2.2 公钥加密算法

公钥密码:加密密钥和解密密钥不相同,也称为非对称密码

公钥加密算法示意图

RSA ,最常用的公钥加密算法之一,用于加密和数字签名。RSA-3072密钥强度为128bit。

ECC,基于椭圆曲线数学的公钥密码体制,安全性高且计算效率高。ECC-256密钥强度为128bit。

SM2,类似于RSA的公钥加密算法,用于数字证书和数字签名,广泛应用于电子政务和金融领域。密钥长度256bit。

SM9,基于椭圆曲线的数字签名算法,支持身份基密码,适用于签名和加密,支持国密标准。密钥长度256bit

DSA,美国国家安全局设计的数字签名算法。

ECDSA ,基于ECC的数字签名算法,广泛应用于比特币等区块链技术。

2.3 哈希算法

散列函数:相同输入产生相同输出,内容哪怕变动一个bit输出结果都会发生极大变化,主要用于实现数据的完整性的校验。

MD5,分组长度512,迭代轮数64,输出长度128,曾广泛用于数据完整性校验,但现在已不推荐使用。

SHA-1,分组长度512,迭代轮数80,输出长度160,类似于MD5,但已逐渐被SHA-256取代。其密钥强度仅为60bit。

SHA-224,分组长度512,迭代轮数64,输出长度224,密钥强度仅为112,已不能满足安全性要求。

SHA-256,分组长度512,迭代轮数64,输出长度256,密钥强度为128bit。

SHA-384,分组长度1024,迭代轮数80,输出长度384,密钥强度为192bit。

SHA-512,分组长度1024,迭代轮数80,输出长度512,比SHA-384更安全,适用于需要更高安全性的场景。

bcrypt,用于密码存储,具有抗暴力破解的能力。

scrypt,类似于bcrypt,但具有更好的内存占用特性,适用于资源受限的环境。

SM3,类似于SHA-256的哈希算法,用于数据完整性校验和密码散列。分组长度512,迭代轮数48,输出长度为256,密钥强度128bit

2.4 密码算法的安全性建议

密钥强度的建议值:应至少为128bit(随着时间推移,该值会有所变化)

32,抵御个人实时攻击

64,小型组织的攻击保护

72,中等规模组织的攻击保护

80,专业机构的简易攻击保护

96,老的标准

112,中期保护要求

128,长期保护要求

256,可预见未来

因此,简单来说,密码密钥强度低于128bit则认定为存在较高风险。

文章使用小书匠MarkDown编辑器书写,大家可以通过本站小书匠邀请码一文获取邀请码下载链接


秋风木叶
2025-2-23
有您的赞赏,我会更加有动力!