对于对手而言
攻击目的:
完全破译:破译使用者的秘钥
部分破译:恢复某些密文对应的明文
攻击种类:
被动攻击:
唯密文攻击:密码分析者有一个或更多的用同一个密钥加密的密文,通过对这些截获的密文进行分析得出明文或密钥。
已知明文攻击:除待解的密文外,密码分析者有一些明文和用同一个密钥加密这些明文所对应的密文。
选择明文攻击:密码分析者可得到所需要的任何明文所对应的密文,这些密文与待解的密文是用同一个密钥加密得来的。
选择密文攻击:密码分析者可得到所需要的任何密文所对应的明文,解密这些密文所使用的密钥与解密待解的密文的密钥一样。
主动攻击:
自适应选择明文攻:密码分析者可得到所雷要的任何明文所对应的密文,这些密文与待解的密文是用同密钥加密得来的,明文可以在看到加密机的返回结果后随时选取。
自适应选择密文攻击:密码分析者可得到所需要的任何密文所对应的明文,解密这些密文所使用的密钥与解密待解的密文的密钥是一样的.密文可以在看到解密机的返回结果后随时选取。
攻击手段:
穷举法:当分组长度n较小时,攻击者可以有效地穷举明文空间,得到密钥。
差分分析
线性分析
相关密钥
侧信道攻击
...
攻击方法:
被动攻击(窃听):获取但不改变传输的信息
主动攻击:不仅窃听,而且还改变传输的信息,目的是实现伪造和欺骗
对抗方法
被动攻击——加密技术 (要保证信息的机密性)
主动攻击——认证技术 (要实现信息的真实性认证)我们要认证:发方的真伪 收方的真伪 内容的真伪 时间的真伪
对抗抵赖的技术(双方互不信赖)(实现信息的不可抵赖性)
密码学的基本目标就是解决信息安全的三个基本安全需求,即:
(1)信息的机密性保证——靠加密算法
(2)信息的真实性认证——靠认证算法和配套协议
(3)承诺的不可否认性保证——由数字签名算法、配套的协议和仲裁机构完成
我们要求密码算法:一切的秘密蕴于密钥之中
基本編码技术的分类
(1)代替密码
利用预先设计的代替规则,对明文逐字符或逐字符组进行代替的密码 (因为规则已定,因而与密钥和被加密的明文字符的序号无关。)
分为单表代替和多表代替两种
单表代替的优点:明文的形态会变化很大
单表代替的缺点:1)明文相同时,密文字符也相同 2)明文的位置不变 (密文的出现次数等于明文的出现次数,明文的跟随关系也出现在密文中——容易被统计出现次数的规律)
多表代替可以克服:单表代替的缺点(只要两个明文字符组相同,则对应的密文宇符组一定相同)
多表代替密码:根据密钥的指示,来选择加密时使用的单表的方法。(此时,K不是常数了,而是秘钥)——如果密钥序列是随机(随机——信号相互独立且等概分布)的该密码称为一次一密体制,它就是绝对安全的,不可破译。
一次一密的密码体制的缺点:
密钥序列是随机序列意味着(1)密钥序列不能周期重复;(2)密钥序列必须与明文序列等长(3)这些密钥序列必须在脱密前分配完毕.4)大量通信时不实用(5)分配密钥和存储密钥时安全隐患大。
解决方案:密钥序列由少量真随机的数按固定的算法生成,只要它很像(意味着我们求不出来它不像随机的地方)随机序列即可这种序列称为伪随机序列
(2)移位密码
对各字符或宇符组进行位置移动的密码
优点:明文字符的位置发生变化
缺点:明文字符的形态没有改变
交替使用代替和移位形成的密码算法(综合两者的优点)形式:代替->移位->代替->移位·····
(3)加减密码
将明文逐字符或逐宇符组与乱数相加或相减的密码
例如:双减密码 仿射密码
交替使用代替密码和仿射密码形成的密码算法 形式:逐块代替->仿射变换->逐块代替->仿射变换·····
小结:
1)密码学的基本目标是解决信息的机密性保证、真实性认证和承诺的不可否认性这三个基本的安全需求
2)对敌手破译能力的假设是知道除密钥外的一切信息
3)密码学有密码编码、密码分析和密钥管理三个分支
4)加密算法应能对抗所有可能的攻击方法
5)对密码算法最基本的攻击方法是穷举密钥攻击;
6)代替、移位和加减是密码算法最基本的编码技术;
7)理论上不可破译的密码算法是存在的次一密
8)序列密码脱胎于一次一密;
9)利用弱的密码变换可搭配成强度很高的加密算法。
10)代替密码与移位密码结合、代替密码与加减密码结合都可以形成强度很高的加密算法,这是分组密码的基本模型。