密码算法安全功能对照表

密码算法安全功能对照表

为提升 Markdown 场景下的可读性,原始大表已按算法类别拆分为多张分组表。

覆盖范围: 密码杂凑函数、对称密码算法、非对称密码算法、组合机制/协议层

参考标准: GB/T 系列、NIST、IETF RFC

密码杂凑函数(SM3 / SHA 系列 / SHA-3 / KMAC)

算法原语 / 变体数据机密性数据完整性消息源真实性不可否认性备注
纯杂凑算法 / (单次哈希)√*仅防无意错误,无法抵御恶意篡改
SHA-256 / SHA-512√*NIST标准,广泛使用
SHA-3 (Keccak)√*吸收结构,抗长度扩展攻击
SM3√*国密标准,256位输出
HMAC / (哈希消息认证码)需共享密钥,提供来源认证
HMAC-SHA256最常用MAC方案
HMAC-SHA512更高安全级别
HMAC-SM3国密HMAC方案
KMAC / (基于SHA-3)NIST SP800-185,可变长密钥
泛杂凑函数 / (UHF/GHASH)用于GCM的GHASH认证组件

对称密码算法(SM4 / AES / 3DES / ChaCha20)

算法原语 / 变体数据机密性数据完整性消息源真实性不可否认性备注
ECB 模式不推荐:相同明文产生相同密文
CBC 模式需IV,适合块数据加密
CFB / OFB 模式流模式,无需填充
CTR 模式可并行,需唯一计数器
SM4-ECB/CBC/CTR/OFB国密对称加密标准
3DES-CBC已弱化,逐步淘汰
CBC-MAC基于CBC的MAC,注意填充攻击
CMAC改进CBC-MAC,NIST SP800-38B
GMAC / (GCM的MAC部分)GCM去掉加密,仅做认证
CCM 模式 / (CTR+CBC-MAC)AEAD,适合资源受限场景
GCM 模式 / (CTR+GHASH)推荐AEAD,高性能,硬件加速
GCM-SIV随机数重用安全,RFC 8452
ChaCha20-Poly1305软件高效,TLS 1.3推荐套件
SM4-GCM国密AEAD方案
SM4-CCM国密AEAD,低资源场景
XChaCha20-Poly1305超长nonce变体,减少碰撞风险
AES-SIV确定性AEAD,RFC 5297

非对称密码算法(SM2 / SM9 / RSA / ECDSA / EdDSA / ECIES)

算法原语 / 变体数据机密性数据完整性消息源真实性不可否认性备注
数字签名 / (通用)依赖私钥唯一性
RSA-PSS 签名推荐RSA签名方案,随机填充
RSA-PKCS#1v1.5 签名旧方案,存在填充oracle风险
ECDSA (P-256/P-384)NIST标准,高效椭圆曲线签名
EdDSA (Ed25519/Ed448)确定性签名,抗侧信道,现代推荐
SM2 数字签名国密椭圆曲线签名标准
SM9 数字签名 / (基于身份)无需证书,基于身份的签名
公钥加密 / (通用)√*数字信封可间接保护完整性
RSA-OAEP 加密√*推荐RSA加密方案
ECIES√*椭圆曲线集成加密方案
SM2 公钥加密√*国密椭圆曲线加密
SM9 加密 / (基于身份)√*无需证书的加密
密钥封装 KEM / (RSA-KEM)用于密钥协商,非直接加密
ECDH / X25519密钥协商,不直接提供CIA

组合机制与协议层(TLS / SSH / IPsec / S/MIME / PGP)

算法原语 / 变体数据机密性数据完整性消息源真实性不可否认性备注
TLS 1.3ECDHE+AEAD,前向保密
TLS 1.2仍广泛使用,需配置强套件
SSH v2远程管理标准协议
IPsec (ESP)网络层加密+认证
IPsec (AH)仅认证,不加密
S/MIME邮件加密与数字签名
PGP / GPG非对称+对称混合加密
TLCP / (GM/T 0024)国密TLS,双证书机制
数字信封非对称+对称混合,密钥保护
JWT (HS256/RS256/ES256)√*无状态令牌,签名可验真实性
XML签名 / XML加密Web服务签名标准

图例说明

  • √ 直接提供该安全功能
  • √* 有条件提供(依赖具体使用方式或配合其他机制,见注释)
  • √C 提供数据机密性(Confidentiality)
  • √NR 提供不可否认性(Non-Repudiation),依赖私钥唯一性
  • — 不提供该安全功能

注释

  • 注 2:公钥加密(√*完整性):构成数字信封时,密文被篡改会导致解密失败,可间接检测到篡改,但这属于消极检测而非主动完整性验证机制。
  • 注 3:AEAD模式(CCM/GCM/ChaCha20-Poly1305/SM4-GCM等):认证加密,单次操作同时提供机密性、完整性与消息源真实性,是当前推荐的现代加密方案。
  • 注 4:不可否认性区别:对称算法的MAC(HMAC/CMAC)因密钥为双方共享,无法证明【具体是哪一方】发送,故不提供不可否认性。数字签名依赖私钥的唯一持有性,可提供不可否认性。
  • 注 5:消息源真实性(MA)不等同于不可否认性(NR):HMAC证明【知道密钥的一方】发送;数字签名证明【私钥持有者】发送,后者才能在法律层面作为证据。
  • 注 6:ECDH/X25519/密钥封装(KEM):属于密钥协商/密钥封装机制,本身不直接提供机密性/完整性/真实性,须配合对称加密算法使用(如TLS握手中的密钥协商阶段)。
  • 注 7:ECB模式安全警告:ECB模式下相同明文块产生相同密文块,存在模式泄露风险,不建议在生产环境使用,应选用CBC/CTR/GCM等模式。
  • 注 8:国密优先:在等级保护测评(GB/T 22239)及商用密码应用合规场景中,应优先选用SM2/SM3/SM4系列算法或TLCP协议。

依据:GB/T 15834、GB/T 32905、NIST SP 800-57、RFC 8446