一些密码体制的对比
对称密码
名称 | 分组大小 | 密钥长度 | 循环次数 | 基本运算/函数 | 结构 | 其他说明 |
---|---|---|---|---|---|---|
DES | 64位 | 56位有效密钥 | 16 | 置换、替代、代数运算 | Feistel结构 | 代数结构存在对称互补性 |
三重DES | 64位 | 112或168位 | ||||
IDEA | 64位 | 128位 | 8 | 16bit异或、模65536加法、模65537乘法 | ||
AES | 128位 | 128/192/256位 | 10/12/14 与密钥长度相关 |
轮密钥异或(AddRoundKey) 字节替换变换(SubBytes) 行位移变换(ShiftRows) 列混合变换(MixColumns) |
SPN | 加解密算法不同 |
RC5 | 非Feistel结构 | 标注方式:RC5-w/r/b 例:RC5-32/12/16表示明文分组长度64,加密轮数12,密钥长度16字节 |
||||
SM4 | 128位 | 128位 | 32 | 非对称Feistel结构 |
公钥密码
- RSA
- 安全性基础:分解大整数的困难性
- 加/解密、密钥交换、数字签名
- 使用最广泛
- ElGamal
- 安全性基础:离散对数问题
- 加/解密、密钥交换、数字签名
- ECC(椭圆曲线密码体制)
- 安全性基础:椭圆曲线上的离散对数问题
- 加/解密、密钥交换、数字签名
- 密钥短,速度快
- 开始广泛应用】
- 国密算法SM2(椭圆曲线公钥密码算法)