目录
一、密码学的基本目标
1.1通信模型
1.2 密码学解决基本问题
密码学解决的问题都围绕传输或存储信息的保密问题来设计的。
(1)对抗窃听的技术——加密技术
信息的机密性问题——解决信息的传输保密和存储保密问题。
(2)对抗主动攻击的技术——认证技术
信息的真实性认证问题——能检测出主动攻击
真实性认证包括以下四个方面:
-
发送方的身份
-
接收方的身份
-
内容的真伪
-
时间的真伪
(3)对抵赖的技术——互不信任的双方认证问题
承诺的不可抵赖问题
密码学的基本目标就是解决信息安全中的三个基本安全需求,即
-
信息的机密性——由加密算法完成
-
信息的真实性认证——由认证算法和配套的协议完成
-
承诺的不可否认性保证——由数字签名算法、配套的协议和仲裁机构完成
二、密码学的主要分支
密码学(Cryptology)主要包括三个分支:
(1)密码编码学
(2)密码分析学
(3)密钥管理学
-
密钥管理学又进一步发展为密码管理学和密码系统设计。
2.1 密码编码学
研究密码算法的编制技术。更确切地说,是研究安全、高效的信息加密算法和信息认证算法的设计理论与技术。
具体研究内容:
2.2 密码分析学
主要任务:研究密码破译的理论和技术。
信息加密算法的破译:
-
获取非授权(被加密)的信息。
信息认证算法的破译:
-
伪造合理的消息,以达到伪造和欺骗的目的。
密码强度:密码算法对抗密码破译的能力,密码破译又称密码分析。
2.3 密钥管理学
在很多情况下,一个密码应用系统的被攻破往往不是密码算法的被破造成的,而是密码系统的密钥管理方案不当造成的。
三、加密算法的一些基本概念
3.1 密码编码学
明文(Message和Plaintext):被隐蔽的消息称作明文,通常用m表示。
密文(Ciphertext):将明文隐蔽后的结果称作密文或密报,通常用c表示。
加密(Encryption):将明文变换成密文的过程称作加密,该过程表示为:c=Eke(m) 。
脱密(Decryption):合法用户由密文恢复出明文的过程称作脱密,该过程表示为:m=Dkd(c)。
密钥(key):控制或参与密码变换的可变的秘密参数称为密钥。密钥又分为加密密钥和脱密密钥。
密码体制:一个密码体制是一个五元组。由明文空间M、密文空间、密钥空间、加密算法、脱密算法五部分组成。
(1) 明文空间M:所有可能的明文构成的集合
(2) 密文空间C:所有可能的密文构成的集合
(3) 密钥空间:所有可用的密钥构成的集合,包括加密密钥和脱密密钥
3.2 密码通信系统的基本结构
3.3 密码加密的基本要求
(1)即使达不到理论上是不可破的,也应当是实际上不可破的。
(2)保密性不依赖于对加密体制或算法的保密,而依赖于密钥。
(3)加密算法和脱密算法适用于密钥空间中的所有元素。弱密钥除外!
(4)易于实现和使用。 ----知道密钥时,加、脱密快捷!
3.4 密码分析学的基本概念
1.Kerckhoffs 假设
对敌手能力的基本假设:假设敌手知道除使用的具体密钥之外的一切信息,目的是恢复明文或求解未知的密钥。
Kerckhoffs假设的原则——一切秘密蕴于密钥之中。
2. 攻击方法分类(知识类别)
3. 攻击方法
1.穷举攻击
2.统计分析攻击
3.代数攻击
4.等价的脱密变换攻击
(1)穷举攻击
穷举攻击:逐一利用每个可能的密钥对密文进行脱密测试,并将脱密结果合理的那个密钥判断为正确密钥。
密钥变化量:一个密码算法的可能密钥的总数
密钥变化量少于264的密码算法是不安全的!密钥变化量为2128的密码算法是安全的!
(2)统计分析攻击
(3)代数攻击
将密码的破译问题归结为有限域上的某个低次多元代数方程组的求解问题,并对方程组求解,以达到破译的目的。
(4)等价的脱密变换攻击
密码分析者针对加密变换的数学基础,通过数学求解的方法来设法找到相应的脱密变换或等价的脱密变换实现攻击。这种攻击通常用于对公钥密码的攻击之中!
四、密码学发展阶段
五、密码的基本编码原理
5.1 基本编码技术的分类
(1) 代替密码
-
利用预先设计的代替规则,明文逐字符或逐字符组进行代替的密码。
-
分为单表代替和多表代替两种。
(2) 移位密码
-
对各字符或字符组进行位置移动的密码。
(3) 加减密码
将明文逐字符或逐字符组与乱数相加或相减的密码。
5.2 单表代替密码
1. 代替密码
例:以十进制为代替单位的S盒
2. 加法密码
3. 凯撒密码
这是一种对英文字母的典型逐字母加密的加法密码,这时q=26,设密钥k=3。
4. 仿射密码
5. 标准字头密码(密钥字密码)
这是一种对英文字母的典型逐字母加密的密码,它利用一个密钥字来构造代替表。
-
密钥字中所含的字母将不包含在后续的对应中。
6. 单表代替的优缺点
优点:明文字符的原形得到了隐蔽
缺点:(1)明文位置不变(2)如果明文字符相同,则密文字符也相同
-
导致一个密文字符在密文中的出现频次,就是它对应的明文字符在明文中的出现频次。
-
明文字符之间的跟随关系直接反映在密文之中。
-
5.3 多表代替密码
-
单表代替的上述信息泄漏都是由于一个明文字符组总是被一个固定的密文字符组代替所造成的。
-
多表代替:一个明文字符组能够被多个密文字符组代替,那么密文字符组的统计规律就可能变得更加均匀,从而更加安全.
-
多表代替密码:根据密钥的指示,来选择加密时使用的单表的方法
1. 维几利亚密码(Vigenere)
2. 博福特密码(Beaufort密码体制)
3. Vernam密码体制
5.4 完全保密的多表代替密码
1. 对合变换
2.拉丁方变换
拉丁方变换的含义:拉丁方表的各列、各行互不相同
3. 一次一密
依次一密体制的结构:
5.4 代替密码的优缺点
1. 单表代替的优缺点
2. 多表代替的优缺点
5.5 移位密码
移位密码的优缺点:
结论: