1.13 密码算法分析
分类 | 名称 | 说明 |
攻击的复杂度可分为数据复杂度、存储复杂度和处理复杂度。 | ||
按照攻击者获取信息能力 | 唯密文攻击(COA)、已知明文攻击、选择明文攻击、选择密文攻击 | COA接触到密文,一般穷举攻击; KPA接触到明文和密文; CPA接触到加密机,知道明文就知道密文,目标为推出密钥,典型的选择明文攻击方法有碰撞攻击和差分攻击等。 CCA接触到解密机,知道密文就知道明文,目标为推出密钥,主要针对公钥密码 |
对称密码分析 | 差分类攻击(相关密钥差分攻击、截断差分攻击、统计饱和攻击、不可能差分攻击、高阶差分攻击、飞去来器攻击、多差分分析);线性类攻击(线性差分分析、多线性分析、线性区分分析)-已知明文攻击 | 从低轮算法入手,向全轮算法逼近 |
对称密码分析-流密码 | 相关攻击、猜测确定攻击 | |
公钥密码分析 | LLL算法等格基约化算法 | 特别针对RSA、DSA/ECDHA算法 |
杂凑函数分析 | 差分攻击、模差分攻击、中间相遇攻击 | 围绕杂凑函数三性质(抗原像攻击单向性;抗第二原像攻击弱抗碰撞性;强抗碰撞性) |
针对密码实现方式 | 侧信道分析,通过物理装备泄露一些信息,如能量消耗、电磁辐射、运行时间等 | 基于物理实现的分析方法,无须实施入侵或破坏密码算法 |
其他攻击方式 | 生日攻击,所利用的是概率论中生日问题的数学原理。 | 使用生日攻击,攻击者可在中找到散列函数碰撞,为原像抗性安全性。 |
中间人攻击,(Man-in-the-Middle Attack,简称“MITM攻击”)是一种“间接”的入侵攻击。 | 通过各种技术手段将受入侵者控制的一台计算机虚拟放置在网络连接中的两台通信计算机之间,这台计算机就称为“中间人”。 | |
重合指数法(破解多表代换密码算法,如维吉尼亚密码) | 除了卡西斯基实验,也可使用别的参数描述猜测的t值是否准确。当计算某个密文的重合指数(又名:重合概率,Index of Coincidence)时,即相当于求在某个密文中随机无放回地抽取其中的两位,这两位的字母相同的概率。 | |
多线性逼近方法 | 1994年Kaliski和Robshaw提出 | |
字典攻击 | 指在破解密码或密钥时,逐一尝试用户自定义词典中的单词或短语的攻击方式。 | |
查表攻击 | 分两个阶段(1)取定明文,枚举所有密钥得出可能的密文;(2)参照获得的明文对应的密文,从预计算表格中查找正确密钥。 | |
时间-存储权衡攻击 | 选择明文攻击方法,由穷尽密钥搜索攻击和查表攻击 | |
MAC攻击方法-重放攻击、密钥推测攻击 | 重放攻击(序号、时间戳、nonce) | |
最佳放射逼近分析方法 | 已知明文攻击 | |
线性密码分析 | 已知明文攻击 | |
分别征服分析 | 利用区分器降低搜索空间大小,提高求解效率。-唯密文攻击。 | |
Pollard-p算法 | 找出任何整数素数的更好方法 | |
插值攻击,针对轮数较少或轮函数很低的密码算法有效 | 针对分组密码,使用一个代数函数来代表一个S-Box,此函数可以用已知明文攻击法取得样本点 | |
Kasiski分析(有点类似重合指数方法) | 通常,用Vigenere密码加密,明文中的相同字母在密文中不会对应相同的字母.但是,如果两个相同字母序列间距正好是密钥长度的倍数时,也可能产生相同的密文序列.寻找重复出现的字母序列,并求其长度的过程被称为Kasiski试验,即Kasiski法. | |
1.14 发展趋势
方向 | 相关技术 | 说明 |
抗量子攻击 | 基于格的密码 | 格最开始作为密码分析技术出现,即LLL格基约化算法分析Knapsack、RSA、NTRU等。2005年Regev提出LWE公钥加密算法 |
基于多变量的密码 | ||
基于编码的密码 | ||
基于杂凑函数的密码 | ||
基于纠错码的密码(卷积码?) | McEliece与Niederreiter加密体制,可以抵抗量子攻击 | |
量子密钥分发 | ||
抗密钥攻击密码 | 密钥泄露容忍 | |
白盒密码 | ||
密文计算 | ||
极限性能 | 轻量级对称密码 | |
轻量级公钥密码 | ||
问题时间复杂度 | P问题 | 在多项式时间内可解的问题为P问题(Polynomial Problem,多项式问题) |
NP问题(可能找到多项式算法) | Non-deterministic Polynomial Problem,非确定性多项式问题,指问题只能通过验证给定的猜测是否正确来求解。 | |
NPC问题(NP完全问题) | 只要我们找到一个NPC问题的多项式解,所有的NP问题都可以多项式时间内约化成这个NPC问题,再用多项式时间解决,这样NP就等于P了。 | |
NP-hard问题 | NPH问题(NP难问题,英文NP-hard问题),P-Hard问题要比 NPC问题的范围广,但不一定是NP问题 |