第2.1章_古典密码学

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

密码分析的条件与工具
➢ 已知加密算法 ➢ 截取到明文、密文中已知或推测的数据项 ➢ 数学或统计工具和技术 ➢ 语言特性 ➢ 计算机 ➢ 技巧与运气
广东技术师范学院-计科院-计算机应用系
➢ 密码分析学 ➢ 穷举攻击
攻击传统密码方法
广东技术师范学院-计科院-计算机应用系
密码分析Байду номын сангаас型
广东技术师范学院-计科院-计算机应用系
✓ 密钥数量
单密钥 或私钥 /两个密钥或公钥
✓ 处理明文的方法
分组 / 流
广东技术师范学院-计科院-计算机应用系
密码分析
➢ 试图破译单条消息 ➢ 试图识别加密的消息格式,以便借助直接的解密算法破译后
续的消息 ➢ 试图找到加密算法中的普遍缺陷(无须截取任何消息)
广东技术师范学院-计科院-计算机应用系
穷举攻击
➢ 试遍所有密钥直到有一个合法的密钥能够把密文还原成为明 文,就是穷举攻击.
广东技术师范学院-计科院-计算机应用系
Brute Force Search穷举攻击
➢ 与密钥的长度正比 ➢ 假设知道或者能够辨认是否明文
广东技术师范学院-计科院-计算机应用系
更多定义
➢ 无条件安全:无论提供的密文有多少,如果由一个加密方案 产生的密文中包含的信息不足以唯一地决定对应的明文
➢ 除了一次一密的方案外,没有无条件安全的算法 ➢ 安全性体现在:
✓ 破译的成本超过加密信息的价值 ✓ 破译的时间超过该信息有用的生命周期 ✓ 满足这两个条件: 计算上是安全的
广东技术师范学院-计科院-计算机应用系
第2.1章 经典加密技术
➢ 替代 ➢ 置换 ➢ 转子机
广东技术师范学院-计科院-计算机应用系
第2阶段 1949~1975(1/1)
➢ 计算机使得基于复杂计算的密码成为可能 ➢ 相关技术的发展
✓ 1949年Shannon的“The Communication Theory of Secret Systems” 提出了两种“安全”,即“理论安全”和“实际安全”,证明 了要达到“理论安全”,密钥的长度必须长于或等于明文的长 度
广东技术师范学院-计科院-计算机应用系
恺撒密码的特点
➢ 单字母密码(简单替换技术) ➢ 简单,便于记忆 ➢ 缺点:结构过于简单,密码分析员只使用很少的信息就可预
言加密的整个结构
广东技术师范学院-计科院-计算机应用系
分析Caesar Cipher
➢ 仅有26种可能替换
✓ A 映射到 A,B,..Z
替代
➢ 明文的字母由其它字母或数字或符号代替 ➢ 若该明文被视为一个比特序列,则替代涉及到用密文比特模
式代替明文比特模式
广东技术师范学院-计科院-计算机应用系
Caesar 密码
➢ 已知最早的代换加密算法 ➢ 由 Julius Caesar 发明 ➢ 首先用于军事中 ➢ Ci=E(Pi)=Pi+3 ➢ 例子:
meet me after the toga party PHHW PH DIWHU WKH WRJD SDUWB
广东技术师范学院-计科院-计算机应用系
Caesar Cipher
➢ 定义替换如下:
abcdefghijklmnopqrstuvwxyz DEFGHIJKLMNOPQRSTUVWXYZABC
广东技术师范学院-计科院-计算机应用系
单表代换密码
➢ 任意替换:26!>4x1026 可能的key,大于56位DES 的密钥空间。
➢ 基于语言统计规律仍可破译
广东技术师范学院-计科院-计算机应用系
单表代换密码安全性
➢ 共有 26! = 4 x 10^26 密钥
• 有这么多密钥应该安全了吧! • !!!WRONG!!! • 问题是人类语言的统计特性
要求
➢ 对称密码要安全使用有两个要求:
✓ 加密算法足够强 ✓ 密钥仅为发送者和接受者知道
Y = EK(X) X = DK(Y)
➢ 加密算法是开放的,大家都知道.所以安全性取决于密钥 ➢ 有安全的通道发放密钥。
广东技术师范学院-计科院-计算机应用系
密码编码学
➢ 特征:
✓ 所使用的加密运算
代换(替换) / 置换
采用的一组规则称作加密算法(Encryption Algorithm). ➢ 解密算法(Decryption Algorithm):接收者对密文解密所采
用的一组规则称为解密算法(Decryption Algorithm) ➢ 密钥(Key):加密和解密算法的操作通常都是在一组密钥的控
制下进行的,分别称为加密密钥(Encryption Key) 和解密密 钥(Decryption Key).
广东技术师范学院-计科院-计算机应用系
基本概念(3/4)
记:
明文记为P且P为字符序列, P=[P1,P2,…,Pn]
密文记为C,
C=[C1,C2,…,Cn]
明文和密文之间的变换记为 C=E(P)及P=D(C)
其中 C表示密文,E为加密算法;P为明文,D为解密算法
我们要求密码系统满足:P=D(E(P))
对信息的隐蔽. ➢ 密码分析学(Cryptanalytics):主要研究加密消息的破译或消
息的伪造.
广东技术师范学院-计科院-计算机应用系
基本概念(2/4)
➢ 明文( Plaintext):消息的初始形式; ➢ 密文( CypherText):加密后的形式 ➢ 加密算法(Encryption Algorithm):对明文进行加密操作时所
➢ 可以循环试验 ➢ 使用 brute force search ➢ 仅仅需要能认识明文即可 ➢ 例如. 解密 ciphertext "GCUA VQ DTGCM"
广东技术师范学院-计科院-计算机应用系
例: PHHW PH DIWHU WKH WRJD SDUWB
1 oggv og chvgt vjg vqic rctva 2 nffu nf bgufs uif uphb qbsuz 3 meet me after the toga party 4 ldds ld zesdq sgd snfz ozqsx 5 6 7 8 9
IDEA,RCx,CAST等 ➢ 90年代对称密钥密码进一步成熟 Rijndael,RC6, MARS,
Twofish, Serpent等出现 ➢ 2001年Rijndael成为DES的替代者
广东技术师范学院-计科院-计算机应用系
基本概念(1/4)
➢ 密码学(Cryptology): 是研究信息系统安全保密的科学. ➢ 密码编码学(Cryptography): 主要研究对信息进行编码,实现
广东技术师范学院-计科院-计算机应用系
对称密码
➢ 又名: 传统加密 / 单钥加密/私钥加密 ➢ 发送方和接收方共享同一个密钥 ➢ 几乎所有的经典加密算法都是这种类型 ➢ 在70年代公钥密码体制被发明之前这是唯一的密码类型。
广东技术师范学院-计科院-计算机应用系
对称密码简化模型
广东技术师范学院-计科院-计算机应用系
广东技术师范学院-计科院-计算机应用系
基本概念(4/4)
➢ 需要密钥的加密算法,记为:C=E(K,P),即密文消息同时依 赖于初始明文和密钥的值。实际上,E是一组加密算法,而 密钥则用于选择其中特定的一个算法。
➢ 加密与解密的密钥相同,即:P=D(K,E(K,P)) ➢ 加密与解密的密钥不同,则:P=D(KD,E(KE,P))
第2章 密码学概论
➢ 古典密码学 ➢ 对称密码体制 ➢ 公钥密码体制
广东技术师范学院-计科院-计算机应用系
密码学发展阶段
➢ 1949年之前 密码学是一门艺术
➢ 1949~1975年 密码学成为科学
➢ 1976年以后 密码学的新方向——公钥密码学
广东技术师范学院-计科院-计算机应用系
第1阶段-古典密码(1/3)
钥。解密密钥必须保密,又称私人密钥(private key)私钥,简称 私钥
广东技术师范学院-计科院-计算机应用系
明文处理方式
➢ 分组密码(block cipher) 将明文分成固定长度的组,用同一密钥和算法对每一块加密,
输出也是固定长度的密文。 ➢ 流密码(stream cipher)
又称序列密码。序列密码每次加密一位或一字节的明文。
➢ 有单个字母,两个字母和三个字母出现的频率表
广东技术师范学院-计科院-计算机应用系
英语中字母出现的频率
广东技术师范学院-计科院-计算机应用系
密码分析学中的应用
➢ 单表替换不改变统计特性 ➢ 由阿拉伯科学家在9世纪发现这个规律 ➢ 计算密文中每个字母出现的频率 ➢ 然后与已知的统计特性相比较 ➢ 对于 Caesar 密码来说寻找最常出现的和最不常出现的字母
密钥数量
➢ 对称密码算法(symmetric cipher)
✓ 加密密钥和解密密钥相同,或实质上等同,即从一个易于推出 另一个
✓ 又称秘密密钥算法或单密钥算法
➢ 非对称密钥算法(asymmetric cipher)
✓ 加密密钥和解密密钥不相同,从一个很难推出另一个 ✓ 又称公开密钥算法(public-key cipher) ✓ 公开密钥算法用一个密钥进行加密, 而用另一个进行解密 ✓ 其中的加密密钥可以公开,又称公开密钥(public key),简称公
广东技术师范学院-计科院-计算机应用系
密码编码系统分类
➢ 保密内容 ➢ 密钥数量 ➢ 明文处理的方式
广东技术师范学院-计科院-计算机应用系
保密内容
➢ 受限制的(restricted)算法 算法的保密性基于保持算法的秘密
➢ 基于密钥(key-based)的算法 算法的保密性基于对密钥的保密
广东技术师范学院-计科院-计算机应用系
✓ 1967年David Kahn的《The Codebreakers》 ✓ 1971-73年IBM Watson实验室的Horst Feistel等几篇技术报告 ✓ 主要特点:数据的安全基于密钥而不是算法的保密
广东技术师范学院-计科院-计算机应用系
第3阶段 1976~
➢ 1976年:Diffie & Hellman 的 “New Directions in Cryptography” 提出了不对称密钥密
➢ 1977年Rivest,Shamir & Adleman提出了RSA公钥算法 ➢ 90年代逐步出现椭圆曲线等其他公钥算法 ➢ 主要特点:公钥密码使得发送端和接收端无密钥传输的保密
通信成为可能
广东技术师范学院-计科院-计算机应用系
第3阶段 1976~
➢ 1977年DES正式成为标准 ➢ 80年代出现“过渡性”的“Post DES”算法,如
25 qiix qi ejxiv xli xske tevxc
改进:单表代换密码
➢ 不仅仅将字母移位 ➢ 对字母进行无规则的重新排列
➢ 因此密钥是 26 字母长
明文: abcdefghijklmnopqrstuvwxyz 密文: DKVQFIBJWPESCXHTMYAUOLRGZN 明文文本: ifwewishtoreplaceletters 密文文本: WIRFRWAJUHYFTSDVFSFUUFYA
广东技术师范学院-计科院-计算机应用系
语言的冗余特性
➢ 人类语言是冗余的 例如 "th lrd s m shphrd shll nt wnt"
➢ 每个字母被使用的频率不相同
✓ 在英语中 e 是被用的最多的字母 ✓ 接着是 T,R,N,I,O,A,S ✓ 其他的字母用的很少 。例如 Z,J,K,Q,X
➢ 给每个字母赋一个数
abcdefghijk l m 0 1 2 3 4 5 6 7 8 9 10 11 12 nopqrstuvwxyZ 13 14 15 16 17 18 19 20 21 22 23 24 25
➢ 则 Caesar 密码如下进行:
C = E(p) = (p + k) mod (26) p = D(C) = (C – k) mod (26)
20世纪早期密码机
广东技术师范学院-计科院-计算机应用系
第1阶段-古典密码(3/3)
➢ 1883年Kerchoffs第一次明确提出了编码的原则:加密算法应 建立在算法的公开不影响明文和密钥的安全。
➢ 这一原则已得到普遍承认,成为判定密码强度的衡量标准, 实际上也成为传统密码和现代密码的分界线。
广东技术师范学院-计科院-计算机应用系
➢ 密码学还不是科学,而是艺术
✓ 出现一些密码算法和加密设备 ✓ 密码算法的基本手段是代换(substitution)和置换(permutation),
针对的是字符 ✓ 简单的密码分析手段出现 ✓ 主要特点:数据的安全基于算法的保密
广东技术师范学院-计科院-计算机应用系
第1阶段-古典密码(2/3)
相关文档
最新文档