第二讲____古典密码学
合集下载
第2讲古典密码

要求唯一解的充要条件是gcd( a,26)=1它称之为乘数密 码算法。该算法描述为:
设P=C=Z/(26), K={a ∈Z/(26) |gcd(a,26)=1},
对k=a ∈K,
定义 ek(x)=ax (mod 26)和dk(y)=a-1(y)(mod 26) x,y ∈Z/(26)
例子: a=9,
• 依然保留了字符频率某些统计信息 • 重码分析法:间距是密钥长度整数倍的相同子串有相
同密文,反过来,密文中两个相同的子串对应的密文 相同的可能性很大。
abc def ghi jkl m
000102 030405 060708 091011 12
nop qrs tuv wxy z
131415 161718 192021 222324 25
(1)若q|(a-b),则a≡b mod q (2)(a mod q)=(b mod q)意味a≡b mod q (3) a≡b mod q等价于b≡a mod q (4)若a≡b mod q且b≡c mod q ,则a≡c mod q
• 模算术(Modular Arithmatic) 在mod q的q个剩余类集{0,1,2,…,q-1}
(5 17)K=(15 16) (8 3)K=(2 5) (0 24)K=(10 20)
⎜⎜⎝⎛125 156⎟⎟⎠⎞ = ⎜⎜⎝⎛85 137⎟⎟⎠⎞K
X −1
=⎟⎠⎞−1
=
⎜⎜⎝⎛
9 2
115⎟⎟⎠⎞
因此,
K
古典密码
基于字符的密码 • 代替密码(substitution cipher):就是明文中的
每一个字符被替换成密文中的另一个字符。接 收者对密文做反向替换就可以恢复出明文。 • 置换密码(permutation cipher),又称换位密码 (transposition cipher):明文的字母保持相 同,但顺序被打乱了。
第二章 简单密码学(补充古典密码学)

中
所使用的方式,其中密钥k=3,比如hello!就表示为khoor(忽略空格和符 号),它的数学表达式为:
加密:c=m+k(mod26)
解密:m=c-k(mod26) 加密步骤:1)先将26个英文字母编号:a,b,c,d……y,z;每个英文字母对应
的数字分别是0,1,2,3……24,25,注意这里的编号是从0开始的,与我们平时
12
Caesar密码
Caesar密码攻击
湖南公安高 等专科学校
如果在一篇用恺撒密码加密的密文中(假设它的字数很多,
而且字母随机性很好),我们就可以从中发现出现频率最多的 字母,假设它为e或者t或者a,将出现频率最低的字母假设为x 或者z或者q,然后玩填字游戏,找到加密所使用的k,攻破这个 加密体制。 求解k的表达式为:k=c-m(mod26) 注意:如果k为负数时,则加上26,使得k始终是一正数
第二章 简单密码学(补充——古典密码学)
湖南公安高 等专科学校
候选明文 exxegoexsrgi dwwdfndwrqfh cvvcemcvqpeg buubdlbupodf attackatonce zsszbjzsnmbd yrryaiyrmlac … haahjrhavujl gzzgiqgzuti式为:
加密:c=m+k(mod26) 解密:m=c-k(mod26) 其中k即密钥,也就是关键字(如cipher)的字母个数。还有一点与Caesar 密码不同,这里的字母表中字母顺序打乱了,不再是完全按英文字母顺序排列 的,关键字不同,密码表的次序就不相同,保证了安全性,比Caesar密码更加 健壮,单由于它仍然是单表替换密码,同样可用字母出现频率弱点进行攻击。
第二章 简单密码学(补充——古典密码学)
保密安全与密码技术-2密码学资料

异或运算(不带进位加法):
明文: 0 0 1 1
加密:
密钥: 0 1 0 1
密文: 0 1 1 0
C=P K
解密:
密文: 0 1 1 0 密钥: 0 1 0 1 明文: 0 0 1 1
P=C K
已知明文、密文,怎样求得密钥? K=C P 只知道密文,如何求得密文和密钥?
古典密码学-隐写术
定义:将秘密信息隐藏在其余信息中 举例
保密安全与密码技术
第二讲 密码学基础
密码学基础
密码学概论 古典密码学 现代密码学
对称密码学 非对称密码学 单向散列 数字签名 数字信封
电子商务 安全Email
电子政务 信息安全应用
电子支付 安全Web
访问控制 身份认证 入侵检测 PKI/PMI 防病毒 VPN 操作系统安全 数据库安全 黑客入侵与防范 防火墙
第一次作业
分组学习现代密码学的各种密码算法 内容:
对称密码学:IDEA、SDBI、AES、RC5、 CAST-256
非对称:DSA、ECC、D-H 单向散列:SHA1、RIPE-MD
要求:PPT报告,代表讲解,3-5分钟
古典密码学
古典密码学的起源 早期的密码:隐写术 代换密码术 置换密码术 古典密码学的优缺点
对称密码和非对称密码
非对称密码,又称公开密钥密码算法
加开密,和解解密密密使钥用保不密同:的c=密E钥Kp((mK)p,,
Ks),把加密密钥公 m=DKs (c)
常用算法:RSA, DSA, 背包算法,ElGamal , 椭圆曲线等Fra bibliotek 优点:
密钥分配:不必保持信道的保密性
第2讲 古典密码

c E3 (m) m 3(mod26),0 m 25 m D3 (c) c 3(mod26),0 c 25
明文: Substitution 明文:information security cryptosystem 密文:密文: lqirupdwlrq VXEVWLWXWLRQ vhfxulub FUBSWRVBVWHP
简化的传统加密模型
加密算法必须够强(什么算强?) 必须安全地协商密钥(天知地知你知我知?)
应当满足的要求
系统即使达不到理论上是不可破的,也应当为实际上不可 破的。就是说,从截获的密文或某些已知明文密文对,要 决定密钥或任意明文在计算上是不可行的。 无条件安全(unconditional security) • 如果算法产生的密文不能给出唯一决定相应明文的足够信 息,无论截获多少密文,花费多少时间都不能解密密文。 • Shannon指出,仅当密钥至少和明文一样长时达到无条 件安全(即一次一密) 计算安全(computational security ) – 破译密文的代价超过被加密信息的价值 – 破译密文所花时间超过信息的有效期 著名的 Kerckhoff 原则:系统的保密性不依赖于对加密体 制或算法的保密,而依赖于密钥。
古典密码的统计分析攻击法
英语字母中常见的组合
• 单词出现概率组合:
• 密码攻击:统计分析攻击
所谓统计分析攻击就是指密码分析者通过分析密文 和明文的统计规律来破译密码。 统计分析攻击在历史上为破译密码作出过极大的贡 献。许多古典密码都可以通过统计分析而破译。
跳舞的小人 Dancing men
福尔摩斯探案-归来记 跳舞的小人 Dancing men
和解密规则dk∈D:C → P,满足对明文x∈P
现代密码学第二讲(必修):古典密码学

置换密码
练习: 明文: nice work
X1234 Pi(x) 2 4 1 3
求密文和逆置换。
思考: 当明文 字符不 是4的整 数倍怎 么办?
置换密码
已知多对明文和密文,可以推导置换表(即 密钥);
穷举攻击:已知密文,明文为有意义字符, 至多尝试m! 个,可以恢复明文
分组为m,至多有m!个置换
helloeveryone惟密文攻击维吉尼亚密码由m个移位密码构成移位密码不改变字符的分布故若能确定m则可以找到每个移位密码的位移量k若用给定的m个密钥表周期地对明文字母加密则当明文中有两个相同字母组长度大于3在明文序列中间隔的字母数为m的倍数时这两个明文字母组对应的密文字母组必相同
《现代密码学》第二讲
数学描述: 用数字表示每个字母:
abcdefghijk l mn o p q r s t u v w x y Z
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
c = E(p) = (p + k) mod (26) p = D(c) = (c – k) mod (26)
穷举攻击:已知密文,且明文为有意义字符 ,至多尝试25次,可以恢复明文.
仿射密码(Affine Cipher)
移位密码的扩展
明文p ∈Z26,密文c ∈Z26 , 密钥k=(a,b) ∈ Z’26× Z26 且gcd(a,26)=1.
加密:
c = E(p) = (a × p + b) mod 26
解密:
p = D(c) = (c – b) × a-1mod 26
仿射密码
例:令密钥k=(7,3), 且gcd(7,26)=1.
03_密码学基础(二)_古典密码算法

Vigenére cipher-破译 破译
依然保留了字符频率某些统计信息 重码分析法: 重码分析法:间距是密钥长度整数倍的相同子串有相同 密文,反过来, 密文,反过来,密文中两个相同的子串对应的密文相同 的可能性很大 a b c d e f g h i j k l m 00 01 02 03 04 05 06 07 08 09 10 11 12 n o p q r s t u v w x y z 13 14 15 16 17 18 19 20 21 22 23 24 25 密钥: 密钥 cryptographycryptographycr 明文: 明文 yourpackagereadyroomathree 密文: 密文 AFSGIOI PG PG…
FDHVDU FLSKHU
caesar cipher
明文 a 变成了密文 D
明文 密文
abcdefghijklmnopqrstuvwxyz DEFGHIJKLMNOPQRSTUVWXYZABC
FDHVDU FLSKHU Nhomakorabeacaesar cipher
明文 e 变成了密文 H
单字母替换密码
单表替换密码 移位( 密码、乘数( 移位(shift )密码、乘数(multiplicative)密码 密码 仿射( 密码、多项式( 仿射(affine ) 密码、多项式(Polynomial)密码 密码 密钥短语( 密钥短语(Key Word)密码 密码 多名替换密码 多表替换密码 维吉尼亚( 维吉尼亚(Vigenere)密码 密码 博福特( 博福特(Beaufort)密码 ) 滚动密钥(running-key)密码 滚动密钥 密码 弗纳姆(Vernam)密码 弗纳姆 密码 转子机(rotor machine) 转子机
密码学第2章 古典密码体制

2. 古典密码举例
➢ 古典密码的主要技术手段:代换(Substitution)和置 换(Permutation),相应的密码系统称为代换密码和 置换密码。
➢ 代换密码又分为单字母代换密码和多字母代换密码。 ➢ 单字母代换密码又分为单表代换密码和多表代换密码。 ➢ 字母怎样进行加解密操作?
ABCDE FGH I J K L M 0 1 2 3 4 5 6 7 8 9 10 11 12
N O P Q R S T U VWX Y Z
13 14 15 16 17 18 19 20 21 22 23 24 25
2.1 移位密码(Shift Cipher)
➢ 模运算 定义 2.2:假设 a 和 b 均为整数, m 是一正整数。若 m 整 除 b a 则可将其表示为 a b(modm) 。式 a b(modm) 读 作“ a 与 b 模 m 同余”,正整数 m 称为模数。
密码体制 2.1:移位密码(加法密码)
令 26 。对 0 K 25,任意 x, y Z26 ,定义
以及
eK (x) (x K ) mod 26
dK ( y) ( y K ) mod 26
➢ 密码体制 2.1 给出了移位密码。因为英文有 26 个字母, 故其一般定义在 26 上。很容易验证移位密码满足前面所 定 义 的 密 码 体 制 的 条 件 , 对 任 意 的 x 26 , 有 d K (eK (x)) x 。
(ab)c a(Biblioteka c)9、 1 是乘法单位元:对任意的 a m ,有 a 1 1 a a 10、乘法和加法之间存在分配律:对任意的 a,b, c m ,
有 (a b)c (ac) (bc) , a(b c) (ab) (ac)
《古典密码学》课件

古典密码学的发展历程可 以追溯到古希腊时期
03
古典密码学的加密 方式
替换式密码
原理:将明文中的每个字符 替换为其他字符
例子:凯撒密码,每个字符 向后移动3位
优点:简单易用,易于实现
缺点:安全性较低,容易破 解
错位式密码
原理:通过改变字母的 位置来加密信息
应用:广泛应用于古代 军事、外交等领域
政治机密保护
古代战争:传递军事情报,保护军事机密 外交谈判:保护外交机密,防止泄露 皇室宫廷:保护皇室机密,防止篡位夺权 商业贸易:保护商业机密,防止竞争对手窃取商业信息
商业秘密保护
商业合同:保护商业合同中的机密信息 商业谈判:保护商业谈判中的机密信息 商业计划:保护商业计划中的机密信息 商业策略:保护商业策略中的机密信息
文艺复兴时期的密码学
起源:文艺复 兴时期,密码 学开始兴起
代表人物:莱 昂纳多·达·芬奇、 伽利略等
密码类型:替 换密码、移位 密码等
应用领域:军 事、外交、商 业等
古典密码学的概念
古典密码学的主要目的是 保护信息的机密性
古典密码学是研究如何将 明文转换为密文的学科
古典密码学的主要方法包 括替换密码和置换密码
古典密码学与现代密码学的关系
古典密码学: 基于数学和 逻辑的加密 方法,如凯 撒密码、维 吉尼亚密码 等
现代密码学: 基于计算机 和通信技术 的加密方法, 如RSA、 AES等
关系:古典 密码学是现 代密码学的 基础,现代 密码学在古 典密码学的 基础上进行 了改进和创 新
局限性:古 典密码学在 安全性和效 率上存在局 限性,容易 被破解
步骤:收集足够多的密文 样本,统计字符频率,找
出最可能的字符
03
古典密码学的加密 方式
替换式密码
原理:将明文中的每个字符 替换为其他字符
例子:凯撒密码,每个字符 向后移动3位
优点:简单易用,易于实现
缺点:安全性较低,容易破 解
错位式密码
原理:通过改变字母的 位置来加密信息
应用:广泛应用于古代 军事、外交等领域
政治机密保护
古代战争:传递军事情报,保护军事机密 外交谈判:保护外交机密,防止泄露 皇室宫廷:保护皇室机密,防止篡位夺权 商业贸易:保护商业机密,防止竞争对手窃取商业信息
商业秘密保护
商业合同:保护商业合同中的机密信息 商业谈判:保护商业谈判中的机密信息 商业计划:保护商业计划中的机密信息 商业策略:保护商业策略中的机密信息
文艺复兴时期的密码学
起源:文艺复 兴时期,密码 学开始兴起
代表人物:莱 昂纳多·达·芬奇、 伽利略等
密码类型:替 换密码、移位 密码等
应用领域:军 事、外交、商 业等
古典密码学的概念
古典密码学的主要目的是 保护信息的机密性
古典密码学是研究如何将 明文转换为密文的学科
古典密码学的主要方法包 括替换密码和置换密码
古典密码学与现代密码学的关系
古典密码学: 基于数学和 逻辑的加密 方法,如凯 撒密码、维 吉尼亚密码 等
现代密码学: 基于计算机 和通信技术 的加密方法, 如RSA、 AES等
关系:古典 密码学是现 代密码学的 基础,现代 密码学在古 典密码学的 基础上进行 了改进和创 新
局限性:古 典密码学在 安全性和效 率上存在局 限性,容易 被破解
步骤:收集足够多的密文 样本,统计字符频率,找
出最可能的字符
《应用密码学》 第二讲 古典密码 课件

密文: DEFGHIJKLMNOPQRSTUVWXYZABC
古典密码(基于字符)的编码方法: 代替(代换)、置换
2020/2/1
一、古典密码
1、代替密码:明文中每一个字符被替换成密文中 的另外一个字符。接收者对密文进行逆替换就恢 复出明文来。在古典密码学中,有四种类型的代 替密码: ①简单代替密码 ②多名码代替密码 ③多字母代替密码 ④多表代替密码
另外,编制古典密码的基本方法对于编制近 代密码仍然有效。 例1:斯巴达人用于加解密的一种军事设备:
情报发送者把一条羊皮螺旋形地缠在一 个锥形棒上 思想:置换
2020/2/1
一、古典密码学
例2:凯撒密码:公元前50年 明文:System models 密文:Vbvwhp prghov 思想:代替
明文: ABCDEFGHIJKLMNOPQRSTUVWXYZ
M=INTELLIGENT Ek(M)= DJTSFFDCSJT 思考:解密怎么做?
2020/2/1
一、古典密码学
②加法密码(移位密码) ● M和C是有26个字母的字母表。
K={0,1,2…25}
●定义一个由M到C的映射:Ek:M →C Ek(mi) = (mi+k) mod 26 Dk(ci) =(ci-k) mod 26
cmodn
2020/2/1
剩余类和剩余系
由于同余关系是等价关系, 因此对于给定的任一正整数 n, 利用模n同余这个关系, 可将整数集划分成n个等价 类, 由于它是一些整数除n后的余数形成的, 所以称它是 剩余类或同余类.
定义:设n是一给定的正整数, 若 [r]n := {i}{ ir(mod n) iZ, 0≤r≤n-1}
Ek(mi)=(ami+b) mod 26 Dk(ci)=a-1(ci-b) mod 26
古典密码(基于字符)的编码方法: 代替(代换)、置换
2020/2/1
一、古典密码
1、代替密码:明文中每一个字符被替换成密文中 的另外一个字符。接收者对密文进行逆替换就恢 复出明文来。在古典密码学中,有四种类型的代 替密码: ①简单代替密码 ②多名码代替密码 ③多字母代替密码 ④多表代替密码
另外,编制古典密码的基本方法对于编制近 代密码仍然有效。 例1:斯巴达人用于加解密的一种军事设备:
情报发送者把一条羊皮螺旋形地缠在一 个锥形棒上 思想:置换
2020/2/1
一、古典密码学
例2:凯撒密码:公元前50年 明文:System models 密文:Vbvwhp prghov 思想:代替
明文: ABCDEFGHIJKLMNOPQRSTUVWXYZ
M=INTELLIGENT Ek(M)= DJTSFFDCSJT 思考:解密怎么做?
2020/2/1
一、古典密码学
②加法密码(移位密码) ● M和C是有26个字母的字母表。
K={0,1,2…25}
●定义一个由M到C的映射:Ek:M →C Ek(mi) = (mi+k) mod 26 Dk(ci) =(ci-k) mod 26
cmodn
2020/2/1
剩余类和剩余系
由于同余关系是等价关系, 因此对于给定的任一正整数 n, 利用模n同余这个关系, 可将整数集划分成n个等价 类, 由于它是一些整数除n后的余数形成的, 所以称它是 剩余类或同余类.
定义:设n是一给定的正整数, 若 [r]n := {i}{ ir(mod n) iZ, 0≤r≤n-1}
Ek(mi)=(ami+b) mod 26 Dk(ci)=a-1(ci-b) mod 26
第02章 古典密码学

若将仿射密码的加密函数换为多项式函数时, 若将仿射密码的加密函数换为多项式函数时,即为多项式密码。
15/67
密钥短语密码
选用一个英文短语或单词串作为密钥, 选用一个英文短语或单词串作为密钥,去掉其中重复的字母得到一个 短语或单词串作为密钥 无重复字母的字符串, 无重复字母的字符串,然后再将字母表中的其它字母依次写于此字母串 就可构造出一个字母替代表。如密钥为key时 替代表如表2.2所示 后,就可构造出一个字母替代表。如密钥为 时,替代表如表 所示 。
表2.1 字母数字映射表
8/67
第2章 古典密码技术
单表替代密码( 2.1.1 单表替代密码(续)
加密变换, 加密变换,E={E:Z26→Z26, Ek (m) = m + k (mod26)| m∈M, k∈K } 解密变换, 解密变换,D={D:Z26→Z26, Dk (c) = c-k (mod26)| c∈C, k∈K } 解密后再把Z 中的元素转换英文字母。 解密后再把 26中的元素转换英文字母。 显然,移位密码是前面一般单表替代密码的一个特例。 显然,移位密码是前面一般单表替代密码的一个特例。当 密钥k=3时,就是历史上著名的凯撒密码( 移位密码的 密钥 时 就是历史上著名的凯撒密码( Caesar)。根据其加密函数特 点,移位密码也称为加法密码 )。根据其加密函数特 )。 。
16/67
单表替代密码分析
17/67
• Given ciphertext:
UZQSOVUOHXMOPVGPOZPEVSGZWSZOPFPESXUDBMETSXAIZ VUEPHZHMDZSHZOWSFPAPPDTSVPQUZWYMXUZUHSX EPYEPOPDZSZUFPOMBZWPFUPZHMDJUDTMOHMQ
应用密码学第2讲-311

5
字母
A B C D E F G H I
表2.1 英文字母的概率分布
概率
0.08167 0.01492 0.02782 0.04253 0.12702 0.02280 0.02015 0.06094 0.06966
字母
J K L M N O P Q R
概率
0.00153 0.00772 0.04025 0.02405 0.06749 0.07567 0.01929 0.00095 0.05497
(1) 双字母出现的概率 例如QE出现的概率。按照一阶特性计算QE出现的概率为
p(QE)=0.0095 × 0.12702 ≈ 1.21 × 10-4 但是在英文课文中QE根本不会出现。 (2)四字母SEND和SEDN在一阶统计特性下出现的概率相等, 这也不符合实际。
8
2.1 语言的统计特性
双字母出现的频数表示为:N(i,j) i, j = 0,1,2, (m-1) (N双-字1母) 出现的概率p(xi,xj)近似地可以表示为 p(xi,xj) = N(i,j) /
以下将q个字母的字母表与Z模q中数作一一对应,利用每个字母 对应的数字代替该字母。例如, 将英文字母表作如下对应:
a b c …y z
0 1 2 … 24 25
这样, 可以用0表示a, 用1表示b.....。
移位代替密码是最简单的一种代替密码。其加密变换 为:Ek (m) m k c(mod q),0 ≤ m, c<q
Zm={0,1,…,m-1}
3
2.1 语言的统计特性
例如,英文字母表可以表示为 X={a,b,c,…,x,y, z} 或者 Zm={0,1,2,…, 24,25}
明文是由Zm中的元素和固定的结合规则确定的。因此具有 语言的统计特性。 例如:字母q后总是跟着字母u。
字母
A B C D E F G H I
表2.1 英文字母的概率分布
概率
0.08167 0.01492 0.02782 0.04253 0.12702 0.02280 0.02015 0.06094 0.06966
字母
J K L M N O P Q R
概率
0.00153 0.00772 0.04025 0.02405 0.06749 0.07567 0.01929 0.00095 0.05497
(1) 双字母出现的概率 例如QE出现的概率。按照一阶特性计算QE出现的概率为
p(QE)=0.0095 × 0.12702 ≈ 1.21 × 10-4 但是在英文课文中QE根本不会出现。 (2)四字母SEND和SEDN在一阶统计特性下出现的概率相等, 这也不符合实际。
8
2.1 语言的统计特性
双字母出现的频数表示为:N(i,j) i, j = 0,1,2, (m-1) (N双-字1母) 出现的概率p(xi,xj)近似地可以表示为 p(xi,xj) = N(i,j) /
以下将q个字母的字母表与Z模q中数作一一对应,利用每个字母 对应的数字代替该字母。例如, 将英文字母表作如下对应:
a b c …y z
0 1 2 … 24 25
这样, 可以用0表示a, 用1表示b.....。
移位代替密码是最简单的一种代替密码。其加密变换 为:Ek (m) m k c(mod q),0 ≤ m, c<q
Zm={0,1,…,m-1}
3
2.1 语言的统计特性
例如,英文字母表可以表示为 X={a,b,c,…,x,y, z} 或者 Zm={0,1,2,…, 24,25}
明文是由Zm中的元素和固定的结合规则确定的。因此具有 语言的统计特性。 例如:字母q后总是跟着字母u。
现代密码学(中山大学)Lecture02

尝试成功,密码就被破解了。事实上对恺撒密码的密码 分析不像破解现代密码那样困难,但许多相同的原则 对两者都适用。让我们做些简单统计。事实证明英语 (或拉丁语)的字母出现的频率彼此差异很大。对使 用恺撒密码的消息进行加密不会改变消息中字母的统 计分布,它只会使另外的字母以同一频率出现。也就 是说,如果一种特定的恺撒密文密钥将E替换为Q,您 将发现一本书的加密版本中Q的数目和原书中的E一样 多。
加密变换:明文空间到密文空间的映射:
f:mc mM, c C
在1—1的映射下,存在有逆映射f-1,使
f-1(c)=f-1·f(m)=m m M ,c C
加密变换通常是在密钥控制下变化的,即
c=f(m, k)=Ek(m)
式中,k K , K为密钥空间。一个密码系统就是在f和密钥k
作用下,由ZqLZq‘L’的映射,或以Zq‘L’中的元素代换ZqL中的 元素,在这意义下,称这种密码为代换密码(Substitution Cipher)。L=1时,称作单字母或单码代换(Monogram Substition),也称为流密码(Stream Cipher)。L>1时称作多字 母或多码代换(Polygram Substition),也称为分组密码。
• 移位代换表:=12…d ,由d个字母序列给定的密钥
•
k=(k1, k2, …, kd )∈Zqd
• ki(i=1, …, d)确定明文第i+td个字母(t为正整数)的移位次数,
即
ci+td=Eki(mi+td )≡mi+td +ki mod q
• 称k为用户密钥(user key)或密钥字(key word),其周期地 延伸就给出了整个明文加密所需的工作密钥(working key) 。
第二讲:密码学计算机安全 -----密码学历史

♦ cf. the Zimmermann telegram in WW1
11. Ciphers Machines 1-- 1
♦ 为了简化加密/解密过程 , 导致密码设备出现 ♦ Jefferson cylinder , 1790s被研制成功 , 包含36个 圆盘 , 每个圆盘
有个随机字母表
1920年还被美国军队使用
参考文献:《密码传奇-从军事隐语到电子芯片》 上海译文出版社
eg. L FDPH L VDZ L FRQTXHUHG
♦ -> I CAME I SAW I CONQUERED
♦ Caesar cipher 可以描述如下:
♦ P l a i n : ♦ Cipher: DEFGHIJKLMNOPQRSTUVWXYZABC
♦ 例: ♦ 写出明文 ♦ 在明文下重复写出密钥字 ♦ 依次使用每个字母作为caesar cipher 的密钥 ♦ 加密对应的明文字母 ♦ Plaintext
THISPROCESSCANALSOBEEXPRESSED
Keyword CIPHERCIPHERCIPHERCIPHERCIPHE
Plaintext
ABCDEFGHIJKLMNOPQRSTUVWXYZ
tomap theaboveplaintextletters. ‘
T"useskey "C"mapsto "V" ‘ H " useskey " I " mapsto " P " ‘ I"iseskey "P"mapsto "X" etc
10. History of the Vigenère Cipher
11. Ciphers Machines 1-- 1
♦ 为了简化加密/解密过程 , 导致密码设备出现 ♦ Jefferson cylinder , 1790s被研制成功 , 包含36个 圆盘 , 每个圆盘
有个随机字母表
1920年还被美国军队使用
参考文献:《密码传奇-从军事隐语到电子芯片》 上海译文出版社
eg. L FDPH L VDZ L FRQTXHUHG
♦ -> I CAME I SAW I CONQUERED
♦ Caesar cipher 可以描述如下:
♦ P l a i n : ♦ Cipher: DEFGHIJKLMNOPQRSTUVWXYZABC
♦ 例: ♦ 写出明文 ♦ 在明文下重复写出密钥字 ♦ 依次使用每个字母作为caesar cipher 的密钥 ♦ 加密对应的明文字母 ♦ Plaintext
THISPROCESSCANALSOBEEXPRESSED
Keyword CIPHERCIPHERCIPHERCIPHERCIPHE
Plaintext
ABCDEFGHIJKLMNOPQRSTUVWXYZ
tomap theaboveplaintextletters. ‘
T"useskey "C"mapsto "V" ‘ H " useskey " I " mapsto " P " ‘ I"iseskey "P"mapsto "X" etc
10. History of the Vigenère Cipher
Lecture02-古典密码

=(9,8,8,24)
=(JIIY)
解密:
K 1 23 20 5 1 2 11 18 1 2 20 6 25 25 2 22 25
P CK 1
23 20 5 1 2 11 18 1 mod 26 (9 8 8 24 ) 2 20 6 25 25 2 22 25
• “China”经仿射加密变换成“RAHQD”
解密:
17 19 236 2 C 0 19 19 7 H 15 7 19 86 mod 26 8 I 16 19 221 13 N 3 19 26 0 A
使用密钥的单表代替加密
• 设密钥为:spectacular。 • 明文:
ABCDEFGHIJKLMNOPQRSTUVWXYZ
• 对应的密文:spectaulrbdfghijkmnoqvwxyz • 如果明文为“China”,则对应的密文为: • elrhs
仿射加密
• 加密:
y f ( x) k1 x k 2 (mod 26)
• 原始消息“China”得到恢复
单表代替密码的特点:
• 密钥量很小,不能抵抗穷尽搜索攻击 • 没有将明文字母出现的概率掩藏起来,很容易 受到频率分析的攻击
频率分析攻击
图3-3 一个长的英文文本中各字母出现的相对频率
常见的双字母组合:TH、HE、IN、ER、RE、AN、ON、EN、 AT; 常见的三字母组合:THE、ING、AND、HER、ERE、ENT、 THA、NTH、WAS、ETH、FOR、DTH等。
class2_古典密码学

单表代换—多项式代换密码
(Polynomial SubstitueCipher)
移位密码、乘法密码、仿射密码
是多项式密码的特例!
代换密码(Substitution Cipher)
单表代换—密钥短语密码(Key Word/Phrase Cipher)
单表代换 单字母代换 单码代换 流密码 代换密码
Phaistos圆盘,直径约160mm的Creran-Minoan粘土圆盘,始于公元前17
世纪。表面有明显字间空格的字母,至今还没有破解。J.Friedrichs:“如 果没有进一步的线索,短的报文段不会提示其含义的。”
双密码盘,估计始于18或19世纪。外层圆盘上有类似词汇表的明文,明文 中有字母,元音字母和常用单词。密文是由两位的十进制数组成的。
多表代换:以一系列代换表依次对明文字母进行代换
周期多表代换密码
d的长度为1:单表代换密码 d的长度和明文一样长:滚动密钥密码 密钥不重复:一次一密钥密码
密钥取自:书、报告 起始位置:书名、章节号、标题
代换密码(Substitution Cipher)
多表代换—弗纳姆Vernam密码
代换密码(Substitution Cipher)
内容及分类
单表代换 单字母代换 单码代换 流密码 代换密码
棋盘密码 移位代换密码凯撒密码 数/采样密码 仿射密码 多项式代换密码 密钥短语密码 乘 非周期多表代换密码 一次一密密码
多表代换
周期多表代换密码
古典 密码
置换密码
多字母代换 多码代换 分组密码
单表代换 多表代换
Playfair密码 希尔(Hill)密码 (矩阵变换密码) 置换 矩阵
单表代换 —棋盘密码
第2讲-古典密码1(密码学)

i
)
明文字母
维 几 尼 亚 密 码 的 代 替 表 为
密 钥 字 母
密 钥 字 母 为 d , 明 文 字 母 为 b 时
查 表 得 密 文 字 母 为 e
当将明、密文空间均设为
Z 26 { 0 ,1, 2 , , 25 }
将对英文字母的加密变换改为:
此时解密变换与加密变换完全相同,也是:
结论: 将代替密码和移位密码轮番使用,必然可 以发挥各自的长处,克服对方的缺点!必然可 以设计出安全的密码体制! 这就是现代密码的设计思想!
习题1、已知某密码的加密方法为:先用移位 密码对明文M加密,再对该结果用维几尼 亚密码加密得密文C。若移位密码使用的加 密密钥为置换T=(351246),维几尼亚密 码使用的加密密钥为AEF,密文 C=vemaildytophtcpystnqzahj, 求明文M。
解密变换为: 此时,明文:晨五点总攻 变换为区位码 1931 4669 2167 5560 2505 后就被加密成密文 4264 7992 5490 8893 5838 缺点: 密文差 = 明文差
c1 c2 [( m1 3) mod 10 ( m2 3) mod 10] [( m1 3) ( m2 3)] mod 10 ( m1 m2 ) mod 10
代替密码的安全性分析 多表代替的优缺点 密钥序列是随机序列意味着: (1)密钥序列不能周期重复; (2)密钥序列必须与明文序列等长; (3)这些序列必须在通信前分配完毕; (4)大量通信时不实用; (5)分配密钥和存储密钥时安全隐患大。 缺点:周期较短时可以实现唯密文攻击。 解决方案:密钥序列有少量真随机的数 按固定的算法生成,只要它很像随机序列即可。 这种序列称为伪随机序列。
)
明文字母
维 几 尼 亚 密 码 的 代 替 表 为
密 钥 字 母
密 钥 字 母 为 d , 明 文 字 母 为 b 时
查 表 得 密 文 字 母 为 e
当将明、密文空间均设为
Z 26 { 0 ,1, 2 , , 25 }
将对英文字母的加密变换改为:
此时解密变换与加密变换完全相同,也是:
结论: 将代替密码和移位密码轮番使用,必然可 以发挥各自的长处,克服对方的缺点!必然可 以设计出安全的密码体制! 这就是现代密码的设计思想!
习题1、已知某密码的加密方法为:先用移位 密码对明文M加密,再对该结果用维几尼 亚密码加密得密文C。若移位密码使用的加 密密钥为置换T=(351246),维几尼亚密 码使用的加密密钥为AEF,密文 C=vemaildytophtcpystnqzahj, 求明文M。
解密变换为: 此时,明文:晨五点总攻 变换为区位码 1931 4669 2167 5560 2505 后就被加密成密文 4264 7992 5490 8893 5838 缺点: 密文差 = 明文差
c1 c2 [( m1 3) mod 10 ( m2 3) mod 10] [( m1 3) ( m2 3)] mod 10 ( m1 m2 ) mod 10
代替密码的安全性分析 多表代替的优缺点 密钥序列是随机序列意味着: (1)密钥序列不能周期重复; (2)密钥序列必须与明文序列等长; (3)这些序列必须在通信前分配完毕; (4)大量通信时不实用; (5)分配密钥和存储密钥时安全隐患大。 缺点:周期较短时可以实现唯密文攻击。 解决方案:密钥序列有少量真随机的数 按固定的算法生成,只要它很像随机序列即可。 这种序列称为伪随机序列。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
J
K L
M E Z R
U D M V W X Y I H Q Z
N O P N W F
X G P
13 14 15 16 17 18 19 20 21 22 23 24 25
设明文为:m=a man liberal in his views 则秘文为:c=a ean vujkx un lug hukqg
2015-3-26
33
Hill密码
破解Hill密码? 已知明文攻击的情况下解线性方程组。
k11 (C1 , C2 , C3 ) k21 k 31
k12 k22 k32
k13 k23 ( P 1, P 2, P 3) k33
1
C K P K CP
2015-3-26
17
恺撒密码的分析方法
首先单字频率确定e,t的范围。 然后使用双字频率。 如有可能还可以使用3字频率,the。
2015-3-26
18
Ek (ai ) a j , j ik mod n
(k , n) 1
乘法密码
加密变换为: Ek (ai ) a j , j ik mod n (k , n) 1 解密变换为:Dk (a j ) ai , i j.k 1 mod n
增大恺撒密码的密钥空间
利用语言的规律性
2015-3-26
14
密码分析
人类语言有冗余度 字母使用频率不相同 在英文中,e的使用率最高 其次,T,R,N,I,O,A,S 其他字母使用频率较低 密文反应了明文字母出现的规律性
2015-3-26
15
英文字母使用频率
2015-3-26
16
英文字母中常见的组合
39
2015-3-26
Feistel密码
Feistel加密
2015-3-26
40
Feistel密码
变换可以用下列函数表示:
L(i) = R(i-1) R(i) = L(i-1) XOR g(K(i), R(i-1))
求逆很容易 实际中,一些这样的连续变换形成完整 密码变换(典型:16轮)
2015-3-26
k13 p1 k 23 p2 k 33 p 3
C1 (k11 p1 k12 p2 k13 p3 ) mod26 C1 k11 k12
C 2 k 21 C2 (k21 p1 k22 p2 k23 p3 ) mod26 C3 k 31 k 22 k 32
2015-3-26
34
置换技术--栅栏技术
are-》aer 明文: wait me at the gate 加密: wimateae atethgt 密文: wimateaeatethgt
2015-3-26
35
置换技术--栅栏技术
更为复杂一些的
密钥:4312567 明文: attackp ostpone/Public key
2015-3-26 4
信息隐藏的媒体
纯文本 格式文本 多媒体介质,如图像,音频,视频
2015-3-26
5
信息隐藏的范围
2015-3-26
6
信息隐藏的例子
第二次世界大战从日本战俘营寄给美国联 邦调查局的明信片:
Dscf0053.jpg
2015-3-26
7
信息隐藏的例子
B {b0 , b1 ,...... bn1}
f : A B, f (ai ) bi
2015-3-26
12
移位密码之恺撒密码
恺撒密码--把字母表中的每个字母用该字母 后面第三个字母进行代替
明文: 密文: 明文:we are students 密文:zh duh vwxghqwv
一个例子:
分析
26×26种字母组合 频率分析变得困难
30
2015-3-26
例: M=bookstore M’=bo xo ks to re C=id rg lp qd hg
2015-3-26
31
Hill密码
m个连续明文字母被m个密文字母代替 由m个线性方程决定替代方法 m=3时的系统描述:
编码(a=0,b=1,…z=25)
C3 (k31 p1 k32 p2 k33 p3 ) mod26
C=KP
2015-3-26 32
Hill密码
一个例子:
明文为pay more money 加密密钥为 17 17 5
K 21 18 21 2 2 19
p=15,a=0,y=24 K(15,0,24) mod 26 = (11,13,18)
恺撒密码的数学表示 c = E(m,k) = (m + k) mod q m = D(c,k) = (c - k) mod q
2015-3-26 13
恺撒密码
对恺撒密码进行强行攻击密码分析
加密和解密算法已知 密钥空间大小为25,为什么 明文容易识别攻击 随机替换,密钥空间26!,为什么
小时候玩的游戏: 老板催我早一点决定毕业去向的时候,已是初 夏树,我还是感到一阵阵凉意。看着老板已经 斑白的头发,心里不禁酸楚。可这毕竟掩盖不 了心底的无奈和郁闷,不过我知道我终究改变 不了什么,我清楚老板很器重我,私下里常对 他朋友说我是他最得意的弟子,是最有可能继 承他衣钵的人。可是老板娘更喜欢文国,因为 他既将成为她的爱婿。我和文国都是老板今年 要毕业的研究生,老板只能从两人中留下一个, 老板说会为我努力。今天看到他从院长办公室 出来的神色,一切都清楚地写在脸上,我已经 没有什么机会了。
2015-3-26
10
一 代替密码
1.单表替换
移位替换 乘法密码 放射变换 密钥短语密码 Vigenere密码 Vername密码 Hill密码
11
2.多表代替
2015-3-26
单表替换
对明文中胡所有字符都使用一个固定胡 映射,即:
A {a0 , a1 ,...... an1}
41
Feistel密码的设计准则
分组大小
增加分组长度会提高安全性, 但降低了密码运算速 度 增加密钥长度,可以提高安全性(使得穷搜索困难), 同样,降低了密码速度
增加轮数可以提高安全性,但降低速度 子密钥生成越复杂,就越安全,但降低速度 复杂的轮函数能够使的密码分析困难,但降低速度
2015-3-26 37
置换技术---方格易位法
按双方约定的方格和填写顺序,将原文填入方 格,再按约定的抄写次序写出规定长度的密码。 例如:约定5*n方格中,横向从上到下填写原 文,从左到右写出长度为4的密码 明文she attended a concert 密文stdc heae encr adot ten s h e a t 特点:简单易行, t e n d e 但经不起穷举试验 d a c o n c e r
b a o j
c p p k
d y q l
e n r m
f e s o
g w t q
h r u s
i b v t
j c w u
k d x v
l f y x
m g z z
明文:persion
2015-3-26
22
单表密码安全性分析
密钥量小 词频特性 没将明文字母出现胡概率掩蔽起来。
2015-3-26
2015-3-26
26
Vigenere密码
密码分析 猜测关键字长度
两个相同明文字母序列出现在一定距离里,该距离是关键
字长度的整数倍,那么它们将产生相同的密文序列
分割vigenere密码为单字母密码
密钥以关键字长度为周期
改进 消除关键字的周期性
AT&T的工程师设计一个使用非常长的密钥工作的系统 只要有足够的密文,或已知明文仍能够破译
密文: APTMTTNAAODWTSUOCOIXKNLYPETZ
2015-3-26
36
置换技术---倒置法
报文倒置:将报文内容按顺序依次倒置,并 截成固定长度的字母组,形成密文。 分组倒置:将明文截成固定长度的字母串, 将每组字母倒置,形成密文。 例如: 原文there was a small attendance at the meeting 报文gnit eeme htta ecna dnet tall amsa sawe reht 分组 ereth sasaw allam dnett aecna mehtt nitee g
2015-3-26 8
信息隐藏的例子
藏头诗: 神箭一飞入蓝天, 舟中载人国力显。 五岳三山河九曲, 号子响彻长江边。 扬眉吐气歌且舞, 我握巨笔作诗篇。 国运昌盛民安乐, 威龙狂舞万万年。
2015-3-26 9
替代和置换(易位)
替代技术 明文字母由其他字母或数字或符号所代替, 进行逆运算恢复明文。 置换技术 对明文字母的某种置换取得一种类型完全 不同的映射,即明文中字母重新排列,本 身未变,位置发生改变。
23
二 多表代替
单表是明文字母与密文字母一一对应, 明文中字母统计特性在密文中没有得到 改变,所以容易破译。 多表定义:以一系列代替表依次对明文 消息的字母进行替换的加密算法。
2015-3-26
24
Vigenere密码
2015-3-26
25
Vigenere密码
Vigenere加密
密钥 deceptivedeceptivedecepitve 明文 wearedicoveredsaveyourself 密文 zicvtwqngrzgvtwavzhcqyglmgj