1.5 密码分析概要
词条 | 内容 |
密码算法分析的目的 | 通过各种攻击方法,找到密码算法的弱点或者不完美的地方。密码分析和密码编码对立统一、互不可缺。 |
唯密文攻击 | 只能获得密文信息 |
已知明文攻击 | 拥有某些密文以及相应的明文(如多表代换密码恩尼格玛的破解) |
选择明文攻击 | 可挑选文明进行加密(但不知道密钥)获得对应的密文 |
选择密文攻击 | 可挑选密文进行解密(但不知道密钥)获得对应的明文 |
1.6 密码算法参数
算法名称 | 算法类型 | 密钥长度 | 密文/输出长度 | 内容说明 | 算法特点 |
SM2 | 非对称密码,ECC | 私钥256,公钥512 | 签名长度=512bit,密文长度=明文长度+768bit | 包括数字签名算法、密钥交换算法、公钥加密算法 | (相对RSA)安全性高-RSA3072,密钥短-256bit,私钥产生简单,签名速度快 |
SM3 | 密码杂凑算法 | / | 生成256bit杂凑值 | 经过填充、扩展、迭代压缩,按512bit长度为若干组 | 基于MD结构,与SHA-256相似(分组大小-512,迭代轮数,输出长度-256) |
HMAC(基于SM3) | 带密钥的杂凑算法 | 256<=k<=512 | 生成256bit杂凑值 | 经过填充、扩展、迭代压缩,按512bit长度为若干组 | 完成完整性检验,保证消息源的真实性 |
MD5 | 杂凑算法 | / | 生成128bit杂凑值 | 不安全 | |
DSA | 基于整数有限域离散对数难题 | / | / | 作为DSS的一部分,只提供签名、验签,不提供加密 | 安全性和RSA相当 |
AES-128/192/256 | 对称密码 | 128/192/256 | 分组长度128bit | 加密轮数10/12/14 | Rijndael算法,加解密算法不一致 |
SM4 | 对称密码 | 128bit | 分组长度128bit | 32轮非线性迭代结构(非平衡Feistel结构) | 安全性与AES-128相当 |
SM1 | 对称密码-分组密码 | 128bit | 分组长度128bit | 算法安全保密强度及相关软硬件实现性能与 AES 相当,该算法不公开,仅以 IP 核的形式存在于芯片中。 | 采用该算法已经研制了系列芯片、智能 IC 卡、智能密码钥匙、加密卡、加 密机等安全产品。 |
SM7 | 对称密码-分组密码 | 128bit | 分组长度128bit | 适用于非接触式IC卡,应用包括身份识别类应用(门禁卡、工作证、参赛证),票务类应用(大型赛事门票、展会门票),支付与通卡类应用(积分消费卡、校园一卡通、企业一卡通等)。 | |
ZUC(祖冲之算法) 128bit版本 | 对称密码 | 128bit | 由128bit种子密钥和128bit IV共同作用产生32bit位宽的密钥流 | 加密算法128-EEA3,完整性保护算法128-EIA3 | 首次走出国门参与国际标准竞争 |
ZUC(祖冲之算法) 256bit版本 | 对称密码 | 256bit | 由256bit密钥和184bit IV产生32/64/128bit三种不同长度的认证标签 | 5G标准 | |
SNOW | 对称密码-流密码 | ||||
RC4 | 对称密码-流密码 | 密钥长度可变 | RC4(Rivest Cipher 4)是一种流加密算法,RC4是有线等效加密(WEP)中采用的加密算法,也曾经是TLS可采用的算法之一 | 破解:2015年,比利时鲁汶大学的研究人员Mathy Vanhoef及Frank Piessens,公布了针对RC4加密算法的新型攻击程式,可在75小时内取得cookie的内容。 | |
IDEA | 对称密码 | 128bit | 在DES算法的基础上发展出来的,类似于三重DES。发展IDEA也是因为感到DES具有密钥太短等缺点 | IDEA的密钥为128位,这么长的密钥在今后若干年内应该是安全的。 | |
DES | 对称密码 | 64bit-56bit用于密钥,8bit校验 | 分组64bit | 3DES(即Triple DES)是DES向AES过渡的加密算法,它使用3条56位的密钥对数据进行三次加密。 | |
RSA | 非对称密码 | 1024、2048不安全,推荐3072bit | 公钥(e,n), 私钥(d,p,q), ed = 1 mod fa(n). 大整数因子分解,基础是欧拉定理。 | P,q是强素数,且足够大; p、q的差不能太小;p-1、q-1的最大公因数应该很小 | |
ElGamal | 基于DH的非对称密钥 | 密文是明文长度2倍,密文中有随机数K | |||