第二讲____古典密码学
合集下载
第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等
关系:古典 密码学是现 代密码学的 基础,现代 密码学在古 典密码学的 基础上进行 了改进和创 新
局限性:古 典密码学在 安全性和效 率上存在局 限性,容易 被破解
步骤:收集足够多的密文 样本,统计字符频率,找
出最可能的字符
- 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