下一届世界杯_世界杯揭幕战 - bjshiyanji.com

crypto系列1-密码体制算法
2026-07-20 09:50:51

密码体制算法介绍密码体制算法是实现信息加密、解密、签名、验证等安全功能的核心技术,主要用于保障数据的机密性、完整性、认证性和不可否认性。根据加密密钥与解密密钥的关系,密码体制可分为对称密码体制、非对称密码体制和混合密码体制三大类,每类包含多种经典算法。

一、对称密码体制(Symmetric Cryptography)对称密码体制又称“单钥密码体制”,其核心特点是加密和解密使用相同的密钥(或加密密钥与解密密钥可相互推导)。由于密钥需要共享,因此密钥的安全分发是该体制的主要挑战。

核心特点

加密/解密速度快,适合处理大量数据(如文件、流媒体)。

密钥长度较短(通常128位、256位),但需严格保密。

密钥管理复杂:n个用户间通信需n(n-1)/2个密钥。

典型算法

DES(Data Encryption Standard)

分组密码,1977年成为美国联邦标准,分组长度64位,有效密钥长度56位(含8位校验位)。

缺点:密钥过短(56位),安全性不足,已被淘汰。

3DES(Triple DES)

DES的改进版,通过对数据执行三次DES加密(加密-解密-加密)增强安全性,密钥长度168位(56位×3)。

兼容性好,但速度较慢,逐渐被AES取代。

AES(Advanced Encryption Standard)

2001年取代DES成为新国际标准,分组长度128位,支持128/192/256位密钥。

采用SP网络结构(替代-置换),安全性高、效率优异,是目前应用最广泛的对称算法(如HTTPS、WiFi加密)。

RC4(Rivest Cipher 4)

流密码,生成伪随机密钥流与明文异或加密,密钥长度可变(1-256位)。

实现简单、速度快,但存在安全漏洞(如WEP协议被破解),逐渐被淘汰。

ChaCha20

流密码,由Google设计,无需硬件加速即可高效运行,抗攻击性强。

广泛用于移动端和嵌入式设备(如HTTPS的TLS 1.3、SSH)。

二、非对称密码体制(Asymmetric Cryptography)非对称密码体制又称“公钥密码体制”,其核心特点是加密和解密使用不同的密钥:一个是公开的“公钥”(用于加密或验证签名),一个是保密的“私钥”(用于解密或生成签名),且从公钥无法推导出私钥。

核心特点

无需共享密钥,解决了对称密码的密钥分发问题。

加密速度较慢,适合处理少量数据(如密钥加密、数字签名)。

密钥长度较长(通常1024位以上),安全性依赖数学难题。

典型算法

RSA(Rivest-Shamir-Adleman)

基于“大整数分解”难题:将两个大质数相乘容易,但分解乘积得到原始质数极难。

支持加密和签名,应用广泛(如HTTPS证书、数字签名、SSH密钥)。

推荐密钥长度:2048位(安全)、4096位(高安全场景)。

ECC(Elliptic Curve Cryptography,椭圆曲线密码)

基于“椭圆曲线离散对数”难题:在椭圆曲线上的点群中,求解离散对数比大整数分解更困难。

同等安全强度下,密钥长度远短于RSA(如256位ECC≈3072位RSA),计算效率更高。

适合资源受限场景(如移动设备、物联网),是未来主流(如比特币、5G安全)。

DSA(Digital Signature Algorithm)

基于“离散对数”难题,仅用于数字签名(不支持加密),美国联邦标准。

改进版为ECDSA(椭圆曲线DSA),结合ECC优势,签名效率更高。

ElGamal

基于“离散对数”难题,支持加密和签名,但签名结果不唯一(概率性算法)。

应用较少,被RSA和ECC替代。

三、混合密码体制(Hybrid Cryptography)混合密码体制结合了对称密码和非对称密码的优势:用非对称密码加密对称密钥,用对称密码加密实际数据,既解决了密钥分发问题,又保证了加密效率。

典型应用流程(如HTTPS)

发送方生成一个临时对称密钥(会话密钥,如AES密钥)。

用接收方的公钥(RSA/ECC)加密会话密钥,确保只有接收方能解密。

用会话密钥加密大量原始数据(如网页内容),效率极高。

接收方用私钥解密得到会话密钥,再用会话密钥解密原始数据。

优势

兼顾安全性(非对称密钥分发)和效率(对称加密大数据),是互联网安全的主流方案(如HTTPS、VPN、邮件加密)。

四、其他重要密码技术1. 哈希函数(Hash Function)

不属于加密算法,但与密码体制紧密配合,用于生成数据摘要(固定长度哈希值),确保完整性。

特点:单向性(无法从哈希值反推原文)、抗碰撞性(不同原文难生成相同哈希值)。

典型算法:SHA-256(应用最广)、SHA-3、MD5(已不安全,淘汰)。

2. 数字签名(Digital Signature)

基于非对称密码和哈希函数,发送方用私钥对数据哈希值加密生成签名,接收方用公钥验证,确保数据未篡改且来源可信。

核心算法:RSA签名、ECDSA签名。

五、总结:密码体制的选择依据

场景需求

推荐体制/算法

理由

加密大量数据(文件、流)

对称密码(AES-256、ChaCha20)

速度快,适合大数据量

密钥分发、数字签名

非对称密码(ECC、RSA-2048+)

无需共享密钥,保障身份认证

互联网通信(如HTTPS)

混合密码(AES+RSA/ECC)

兼顾密钥安全分发和数据加密效率

资源受限设备(物联网)

ECC+轻量级对称算法(如AES-128)

密钥短、计算量小,适合低功耗设备

密码体制的安全性不仅依赖算法本身,还取决于密钥管理(如密钥生成、存储、销毁)和实现细节(如抗侧信道攻击)。随着量子计算的发展,抗量子密码(如格基密码)正成为新的研究热点。

更多好久没写博客了,或者是有些忙,终归是懒。

希望重新搞起来,就像跑步那样,每周一次,坚持下来,锻炼脑力!

得有八九个月了,其实也攒了挺多素材了,趁着即将到来的国庆,一股脑全给他倒出来。

行动,才不会被动!

欢迎关注个人公众号 微信 -> 搜索 -> fishmwei,沟通交流。

博客地址: https://fishmwei.github.io

掘金主页: https://juejin.cn/user/2084329776486919