# 加密算法有哪些?

在这里插入图片描述

# 介绍

加解密算法是信息安全的核心,主要可以分为三大类:对称加密算法、非对称加密算法和哈希算法

# 对称加密算法

在对称加密中,加密和解密使用同一个密钥。它的特点是速度快、效率高,适合对大量数据进行加密,但密钥的传输和管理是个难题

# AES

地位:目前全球最流行、最安全的对称加密标准

特点:支持 128、192 和 256 位密钥长度。破解难度极高,广泛应用于无线网络安全、网银系统及文件加密

# ChaCha20

地位:一种现代流加密算法

特点:在没有硬件加速的设备上(如部分移动设备),其运行速度比 AES 快且更安全,常与 Poly1305 组合使用(ChaCha20-Poly1305)

# DES / 3DES

地位:已过时 / 逐步淘汰。

特点:DES 的 56 位密钥太短,极易被暴力破解;3DES 是其过渡方案(加长密钥),但由于速度慢且效率低,正被 AES 全面取代

# 非对称加密算法

非对称加密使用一对密钥:公钥(Public Key)和私钥(Private Key)。公钥公开用于加密,私钥严格保密用于解密(或反过来用于数字签名)

# RSA

地位:历史悠久且应用最广泛的非对称加密算法

特点:基于大整数因子分解的数学难题。为了安全,目前推荐使用 2048 位或更高长度的密钥,计算开销比对称加密大很多

# ECC

地位:新一代非对称加密的主流。

特点:相比 RSA,它可以用更短的密钥实现同等甚至更高的安全性(例如,256 位的 ECC 安全性相当于 3072 位的 RSA)。因此它速度更快、耗能更低,广泛应用于移动端和现代网络协议(如 TLS 1.3)

# SM2

地位:中国国家密码管理局发布的国产商用密码算法。

特点:基于椭圆曲线(ECC)结构,主要用于代替国外的 RSA 算法,在中国政府、金融等领域强制或推荐使用

# 哈希算法

严格来说,哈希算法不是加密,因为它是单向不可逆的(无法从密文反推明文)。它将任意长度的输入转换为固定长度的输出,常用于数据完整性校验、密码存储和数字签名

# SHA-2 / SHA-3

特点:SHA-2 家族(包括 SHA-256, SHA-512 等)是目前的安全标准,广泛用于区块链、安全证书等。SHA-3 是其最新的替代标准,结构不同,抗攻击能力更强

# MD5 / SHA-1

地位:已被淘汰,不安全

特点:由于存在“哈希碰撞”(不同的输入产生相同的输出)缺陷,它们不再适用于安全领域,目前仅用于快速的文件完整性比对

# SM3

地位:中国国产商用哈希算法

特点:安全性与 SHA-256 相当,用于数字签名和验证

# 实际应用

在现代网络安全中(例如你访问网页时用的 HTTPS 协议),通常是结合使用这些算法的:

  1. 非对称加密 (RSA/ECC):用于在握手阶段安全地交换一个随机生成的“临时密钥”
  2. 对称加密 (AES):双方拿到临时密钥后,用它来高效加密传输的实际网页数据
  3. 哈希算法 (SHA-256):用于确保数据在传输过程中没有被第三方篡改