第3章_古典密码体制续-密码分析
古典密码简介

古典密码简介从密码学发展历程来看,可分为古典密码(以字符为基本加密单元的密码)以及现代密码(以信息块为基本加密单元的密码)两类。
⽽古典密码有着悠久的历史,从古代⼀直到计算机出现以前,古典密码学主要有两⼤基本⽅法:①置换密码(⼜称易位密码):明⽂的字母保持相同,但顺序被打乱了。
②代替密码:就是将明⽂的字符替换为密⽂中的另⼀种的字符,接收者只要对密⽂做反向替换就可以恢复出明⽂。
古典密码是密码学的根源,虽然都⽐较简单⽽且容易破译,但研究古典密码的设计原理和分析⽅法对于理解、分析以及设计现代密码技术是⼗分有益滴^_^⼀.置换密码1.列置换密码(矩阵置换密码)明⽂:ming chen jiu dian fa dong fan gong密钥:yu lan hua去掉密钥重复字母:yulanh,得出距阵列数为6;将明⽂按⾏填充距阵。
得到密钥字母顺序: 653142;按列(依顺序)写出距阵中的字母。
密⽂:giffg hddn0 njngn cuaa0 inano meiog解密:加密的逆过程;2.周期置换密码 周期置换密码是将明⽂串P按固定长度m分组,然后对每组中的⼦串按1,2,...,m的某个置换重排位置从⽽得到密⽂C。
其中密钥σ包含分组长度信息。
解密时同样对密⽂C按长度m分组,并按σ的逆置换σ-1把每组⼦串重新排列位置从⽽得到明⽂P。
明⽂:State Key Laboratory of Networking and Switching加密密钥:σ=(15623)明⽂分为七组:(StateK)(eyLabo)(ratory)(ofNetw)(orking)(andSwi)(tching)加密变换:密钥⾥没有4,则第4位保持不变,然后对应的第1位换到第5位,第5位换到第6位,第6位换到第2位....密⽂:(aKttSe)(Loyaeb)(tyaorr)(Nwfeot)(kgrion)(dinSaw)(hgcitn)解密密钥:σ-1 = (13265)3.栅栏密码此密码⼀般适⽤于较短的密码,原理是字母的错位。
应用密码学第3章-古典密码

移位密码(Shift Cipher)
ABCD E F GH I J K LMNOPQR S T U VWX Y Z D E F GH I J K L MNOPQR S T U VWX Y Z A B C
凯撒密码的特点
移位密码体制
• 加密: ek (x) x k(mod 26) y C
Plaintext alphabet A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Ciphertext alphabet 1 T M K G O Y D S I P E L U A V C R J W X Z N H B Q F Ciphertext alphabet 2 D C B A H G F E M L K J I Z Y X W V U T S R Q P O N
01234567891111111111222222 0123456789012345
解密
17 19 236
2 C
0
19
19
7
H
ห้องสมุดไป่ตู้
15 7 19 86 mod26 8 I
破解替换密码(续)
• 密文中的其他二元文法
–IX => *T, I 对应的是 A 或 I. 因为我们前面已经知道谁 对应的A,那么I = I.
隐写术的缺点
• 形式简单但构造费时,要求有大量的开销 来隐藏相对较少的信息
• 一旦该系统的构造方法被发现,就会变得 完全没有价值
• 隐写术一般无稳健性
§3-2 代替
• 就是明文中的字母由其他字母、数字或符号所取 代的一种方法
密码技术专题(二)——古典密码体制

密码技术专题(二)—古典密码体制∙1、密码体制的概念o明文信源o密文o密钥与加密运算o密码体制∙2、古典密码体制的发展o古典加密方法o代替密码o换位密码o转轮密码∙3、几种典型的古典密码体制o CAESAR体制o双字的Playfair体制o维吉尼亚体制o Hill体制我们已经知道,一个密码体制由明文信源、密文、密钥与加密运算这四个基本要素构成,下面我们将进一步给出它们的数学模型。
1、明文信源直观地讲,明文信源就是明文字母表或者明文字母。
比如所有的英文字母、全部的中文字符就是典型的明文字母表。
准确一点,明文信源还应当包含明文字母的概率分布。
如果用X表示明文字母表,则它的元素x∈X则就是明文字母。
在明文字母表中,不同的明文字母出现的频率往往是不同的,比如在26个英文字母中,一般来说字母“e”的频率最高;而在汉字中,可能是“的”字频率最高。
所以,一个明文信源记为S=[X,p(x)],其中X为明文字母表,p(x)为明文字母x∈X 出现的概率,而且p(x)满足如下条件:对任何x∈X,p(x)≥0,且∑p(x)=1。
2、密文密文由密文字母表Y和密文字母y∈Y组成,密文字母表一般是指密文可能使用的全部字母的集合,而y∈Y是它的元素。
密文字母表可以与明文字母表相同,也可以不同。
3、密钥与加密运算密钥用来从密码体制的一组加密运算中选择一个加密运算(或者称为加密步),密钥允许你按照以前制定的规则改变加密,比如每天,或每份报之后,或者每个字符之后。
通常,密钥的组织和编排须利于它们允许通过简单的规则产生单独的加密步。
加密方法的组合复杂度取决于在此方法下密钥的数量。
如果用K表示密钥空间,也就是选择加密步的参数集合,k∈K则称为一个密钥。
加密步就是明文字母表X到密文字母表Y的一个映射:E:X→Y,对每个x∈X。
由于加密步并不是单一的,而是一族运算,因此我们就可以记为Ek=Ek(x),其中x∈X,k∈K。
除特殊的编码方法外,如多名码或多音码,对于每个k∈K,Ek(x)都是X到Y的1-1映射。
《现代密码学》教学大纲

动、答疑模块。
六、考核方式
闭卷笔试,课程作业、实验成绩、课堂表现、考勤。
七、成绩评定方法
期末笔试成绩占 80%,平时成绩占 20%(根据课程作业、实验成绩、课堂表现、
考勤等)。
八、主要参考书籍
1.谷利泽,郑世慧,杨义先. 现代密码学教程. 北京邮电大学出版社,2015.3
(教材)。
2.B. Schneier. Applied cryptograghy second edition: protocols, algorithms, and
题;
1.2 具有扎实的专业基础理论,包括信息论与编码、密码学原理、信息
目标 5 安全数学基础、计算机网络技术等,能够用其解决信息安全相关领域
H
的复杂工程问题;
4.5 能正确采集、整理实验和模拟数据,对实验及模拟结果进行关联、 M
建模、分析处理,获取果进行关联、 H
source code in C. NewYork: John Wiley & Sons, 1996. 中译本: 吴世忠, 祝世雄, 张文
政译。
3.马春光. 现代密码学教程, 哈尔滨工程大学自编讲义。
大纲编写者:方贤进,xjfang@, /~xjfang/crypto/
一、教学目标
通过本课程的理论教学及实验训练,使学生具备以下知识和能力:
目标 1:掌握密码学与信息安全的关系、信息安全的目标(5 要素);掌握现代
密码学的研究内容与体系结构;掌握保密系统的模型及安全性、认证系统的模型及
安全性。
目标 2:掌握古典密码体制中的两种方法:置换密码与代换密码;掌握古典密
码分析方法,能使用“拟重合指数法”对“多表代换加密”实行“唯密文攻击”。
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) 转子机
清华大学出版社 密码学PPT课件

清华大学出版社 2008年9月
课程主要内容
第1章 密码学概述 第2章 古典密码技术 第3章 分组密码 第4章 公钥密码体制 第5章 散列函数与消息鉴别 第6章 数字签名技术 第7章 密钥管理技术 第8章 身份鉴别技术 第9章 序列密码 第10章 密码技术应用
第1章 密码学概述
✓ 二十世纪末的AES算法征集活动使密码学界又掀起了一次分组密码研究的 高潮。同时,在公钥密码领域,椭圆曲线密码体制由于其安全性高、计算 速度快等优点引起了人们的普遍关注和研究,并在公钥密码技术中取得重 大进展。
✓ 在密码应用方面,各种有实用价值的密码体制的快速实现受到高度重视, 许多密码标准、应用软件和产品被开发和应用,美国、德国、日本和我国 等许多国家已经颁布了数字签名法,使数字签名在电子商务和电子政务等
图1.4(a) ENIGMA密码机
图1.4(b) TYPEX密码机
近代密码时期可以看作是科学密码学的前夜,这阶段的密码技术可以
说是一种艺术,是一种技巧和经验的综合体,但还不是一种科学,密码专 家常常是凭直觉和信念来进行密码设计. 和分析,而不是推理和证明。
6/31
第1章 密码学概述
• 现代密码时期
本章主要内容
• 信息安全与密码技术 • 密码技术发展简介 • 密码学基本概念
➢ 密码学的主要任务 ➢ 密码系统的概念 ➢ 对密码系统的攻击 ➢ 密码系统的安全性 ➢ 密码体制的分类 ➢ 对称与非对称密码体. 制的主要特点
3/31
Байду номын сангаас
第1章 密码学概述
1.1 信息安全与密码技术
• 密码技术是一门古老的技术;
④ 抗抵赖性
是一种用于阻止通信实体抵赖先前的通信行为及相关内容的安全特性 。密码学通过对称加密或非对称加密,以及数字签名等技术,并借助可信机 构或证书机构的辅助来提供这种服务。
密码学概述与古典密码详解演示文稿

y=24, 7*24+21(mod26)=7, yh
security对应的密文:rxjfkzyh
21/02242//210/224
42
第42页,共60页。
eg:仿射加密。设(a,b)=(7,21),对明文‘security’ 加密。对‘vlxijh’解密。
m a1(c b) mod 26
7-1mod26=? 7*15mod26=1 v=21, 15(21-21)mod26=0, va l=11, 15(11-21)mod26=6, lg
aKttSe
如何解密????
21/02242//210/242
33
第33页,共60页。
三、 单表代换密码
就是明文中的字母由其他字母、数字或符 号所取代的一种方法。
算法:建立一个代换表,加密时将明文字 符通过代换表代换为相应的密钥文字。
具体的代替表称之为密钥。
21/02242//210/224
34
第34页,共60页。
21/02242//210/224
13
第13页,共60页。
2 人为攻击
主动攻击:包括对数据流的某些篡改或产生某些 假的数据流。
分为以下四个子类: ①中断:是对系统的可用性进行攻击,如禁止设备
的正常使用或管理。
②篡改:是对系统的完整性进行攻击,如修改数据
文件中的数据、替换某一程序使其执行不同的功能、 修改网络中传送的消息内容等。
eg1:已知明文是‘Beijing 2008 Olympic Games’,密
钥k = 6,e = (14)(56)。
加密过程是:
step1:将明文m按照宽度k分行。
M= B e i j i n
1-2古典密码之古典密码分析

密码学原理唯密文攻击分析古典密码26个英文字母在英文文字出现的不同频率◆最困难的分析条件◆通常需要用到英文字母的频率分析和反复猜测◆可分析单表和多表代换密码◆分析多字母代换比较困难(如Hill密码)仿射密码的密码分析仿射密码体制的数学描述对于密码体制的五元组(P, C, K, E, D)有•P=C=Z26•K={(a,b)∈Z26×Z26 : gcd(a,26)=1}•对任意的k=(a,b)∈K, x,y∈Z26,定义e k(x)=(ax+b)mod26d k(y)=a-1(y-b)mod26•gcd(a,26)=1意味着a和26互素•a-1是a关于模26乘法的逆分析目标:根据密文得到a和b的值。
分析方法:首先分析出现频率最高的字符,只需要猜中两个字母的代换,就能解出a 和b。
仿射密码分析举例得到仿射密码的密文如下FMXVEDKAPHEFRBNDKRXRSREFMORUDSDKDVSHVUFEDKAPRKDLYEVLRHHRH分析密文中每个字母的出现频数记录如下字母频数字母频数字母频数字母频数字母频数A2B1C0D7E5F4G0H5I,J0K5L2M2N1O1P2Q0R8S3T0U2V4W0X2Y1Z0以上密文中出现的最大频数的几个密文字母依次是R 、D 、E 、H 、K 、S 、F 、V 。
假设R 是e 的加密,D 是t 的加密即e k (4)=17,e k (19)=3,因为e k (x)=a x+b mod 26,得到方程组。
解方程组可知a =6,b =19,因为a 不满足与26互素的条件,因此猜测错误。
仿射密码分析举例a b mod a b mod ⎧⎨⎩4+=172619+=326仿射密码分析举例以上密文中出现的最大频数的几个密文字母依次是R、D、E、H、K、S、F、V。
再假设R 是e的加密,E是t 的加密,继续使用该方法得到a=13仍不满足与26互素的条件。
再假设H是t 的加密,得到a=8仍无效。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如前面的猜测,假设 dK (Z ) e, dK (W ) d ,回过头再 看看密文并注意到 ZRW 和 RZW 出现在密文的开始部分,RW 后面也出现过。因为 R 在密文中频繁的出现,而 nd 是一 个常见的两字母组,所以我们可以视 dK (R) n 作为可能 的情况。
这样,就有如下的形式:
➢ 另外,考虑两字母组或三字母组组成的固定序列也 是很有用的。
➢ 30 个 最 常 见 的 两 字 母 组 ( 出 现 次 数 递 减 ): TH,HE,IN,ER,AN,RE,DE,ON,ES,ST,EN,AT,TO,NT,H A,ND,OU,EA,NG,AS,OR,TI,IS,ET,IT,AR,TE,SE,HI 和 OF。
-ed-a---nh---ha---a-e----ed-----a-d--he--n XZWGCHSMRNMDHNCMFQCHZJMXJZWIEJYUCFWDJNZDIR
现在考虑出现次数较高的密文字母 M,由前面分析,密 文段 RNM 解密成 nh-,这说明 h-是一个词的开头,所以 M 很可能是一个元音,因为已经使用了 a 和 e,所以猜测 dK (M ) i 或 o,因为 ai 是一个比 ao 出现次数更高的明 文组,所以首先猜得 dK (M ) i,这样有:
------end---------e----ned---e-----------YIFQFMZRWQFYVECFMDZPCVMRZWNMDZVEJBTXCDDUMJ
--------e----e---------n--d---en----e----e NDIFEFMDZCDMQZKCEYFCJMYRNCWJCSZREXCHZUNMXZ
➢ 首先考虑最弱类型的攻击,即唯密文攻击。
➢ 假设明文串是不包括标点符号及空格的普通英文 文本。
➢ 许多密码分析方法都利用了英文语言的统计特性。 目前已经有许多从各种小说、杂志和报纸上统计的 26 个英文字母出现的频率,Beker 和 Piper 曾给出 的一组统计数据。
字母
概率
字母
概率
➢
首A 先考虑最弱0.类08型2的攻击,N即唯密文攻0击.0。67
可能置换组成。对任意的置换 K ,定义:
再定义
e (x) (x) ,
d ( y) 1 ( y) ,
这里 1 代表置换 的逆置换。
➢ 代换密码的分析比仿射密码更复杂一些。 例 3.2:考虑如下利用代换密码加密的密文 YIFQFMZRWQFYVECFMDZPCVMRZWNMDZVEJBTXCDDUMJ NDIFEFMDZCDMQZKCEYFCJMYRNCWJCSZREXCHZUNMXZ NZUCDRJXYYSMRTMEYIFZWDYVZVYFZUMRZCRWNZDZJJ XZWGCHSMRNMDHNCMFQCHZJMXJZWIEJYUCFWDJNZDIR 此密文的频数分析由下表给出。
对任意的 K (a,b) K ,x, y Z26 ,定义加密变换为: eK (x) (ax b) mod 26
相应的解密变换为: d K ( y) a 1 ( y b) mod 26
(x, y ¢ 26 ) 。
➢ 可利用统计数据来破译仿射密码。
例 3.1 假设 Oscar 从仿射密码中截获了如下密文: FMXVEDKAPHFERBNDKRXRSREFMORUDSDKDVSHVUFEDKAPRKD LYEVLRHHRH
再试一种可能性:R 是 e 的加密,H 是 t 的加密,则 有 a 8,这也是不合法的。
继续进行,我们猜测 R 是 e 的加密,K 是 t 的加密, 这样可得 a 3,b 5 ,首先它至少是一个合法的密钥,下 一步工作就是检验密钥 K (3,5) 的正确性。如果我们能得 到有意义的英文字母串,则可证实 (3,5) 是有效的。
下一步可以试试 dK (N ) h ,因为 NZ 是一个常见的两字母 组而 ZN 不是常见的两字母组。如果这个猜测是正确的, 则明文 ne-ndhe 很可能说明 dK (C) a 。于是有:
------end-----a---e-a--nedh--e------a----YIFQFMZRWQFYVECFMDZPCVMRZWNMDZVEJBTXCDDUMJ
2I6 个英文字母0.0出7现0 的频率,VBeker 和 Pi0p.e0r1曾0 给出
的J 一组统计数0.0据0。2
K
0.008
W
0.023
X
0.001
L
0.040
Y
0.020
M
0.024
Z
0.001
➢ 在上表的基础上,Beker 和 Piper 把 26 个英文字 母划分成如下 5 组:
1. E 的概率大约为 0.120; 2. T、A、O、I、N、S、H、R 的概率在 0.06 至 0.09 之间; 3. D、L 的概率大约为 0.04; 4. C、U、M、W、F、G、Y、P、B 的概率在 0.015 至 0.023 之间; 5. V、K、J、X、Q、Z 的概率小于 0.01。
首先分析密F文各字母4出现的频数S
3
G
0
T
0
H
5
U
2
I
0
V
4
J
0
W
0
K
5
X
2
L
2
Y
1
M
2
Z
0
这里虽然只有 57 个字母,但它足以分析仿射密码。 最大频数的密文字母是:R(8 次),D(7 次),E,H,K (每个 5 次)和 S,F,V(各 4 次)。 首先,可以猜想 R 是 e 的加密而 D 是 t 的加密,因为 e 和 t(分别)是两个出现频数最高的字母。以数字表达即 为 eK (4) 17 和 eK (19) 3 ,因为 eK (x) ax b ,这里 a 和 b 是未知的,所以我们有如下方程组:
能获得任意的明文串 x 对应的密文串 y 。 ➢ 选择密文攻击:敌手可获得对解密机的访问权限,这样他
能获得任意的密文串 y 对应的明文串 x 。
➢ 在以上任何一种情况下,敌手的目标都是为了确定正在 使用的密钥。
➢ 显然,这四种类型的攻击强度依次增大。选择密文攻击 主要与后面几章将要介绍的公钥密码体制相关。
第3章古典密码体制续 ——密码分析
本节主要内容
➢ 攻击模型 ➢ 仿射密码的密码分析 ➢ 代换密码的密码分析 ➢ 维吉尼亚密码的密码分析 ➢ Hill密码的密码分析
攻击模型
➢ Kerckhoff 假设:在讨论密码分析技术时,一般都假设 敌手 Oscar 知道正在使用的密码体制。
➢ 当然,如果 Oscar 不知道具体的密码体制,那么完成密 码分析工作将更加困难。但设计者不能将密码体制的安 全性建立在敌手 Oscar 不知道具体的密码体制这样一种 (可能不确定的)假设上。
4a b 17 19a b 3 这个方程组有唯一解 a 6, b 19 (在 Z26 ),但这是一个不 合法的密钥,因为 gcd(a, 26) 2是 e 的加密,而 E 是 t 的加密,继续使用上 述的方法,得到 a 13,这也是一个不合法的密钥。
下面需要确定明文 o 对应的密文。因为 o 是一个经常 出现的字母,所以我们猜测相应的密文字母是 D,F,J,Y 中 的一个。Y 似乎最有可能,否则将得到长串的元音字母, 即从 CFM 或 CJM 中得到 aoi。因此,我们假设 dK (Y ) o。
剩下密文字母中三个最高频率的字母是 D,F,J,我们 猜测它们以某种次序解密成 r,s,t,三字母 NMD 两次出现 说明很可能 dK (Y ) o,对应的明文三字母组为 his(这与 前面假设 dK (D) {r, s,t}是一致的)。HNCMF 可能是 chair 的加密,它说明 dK (F ) r (同时 dK (H ) c ),这样通过排 除法有 dK (J ) t ,现在我们有:
➢ 因此,我们的目标是设计在 Kerchhoff 假设下安全的密 码体制。
➢ 首先,对不同攻击类型(模型)进行分类。一个攻击模 型就指定了敌手进行攻击时所拥有的信息。即敌手对攻 击目标知道多少?
攻击模型
➢ 最常见的攻击类型有:
➢ 唯密文攻击:敌手只有密文串 y 。 ➢ 已知明文攻击:敌手具有明文串 x 和对应的密文串 y 。 ➢ 选择明文攻击:敌手可获得对加密机的访问权限,这样他
h-------ea---e-a---a---nhad---en--a-e-h--e NDIFEFMDZCDMQZKCEYFCJMYRNCWJCSZREXCHZUNMXZ
he-a-n------n------ed---e---e--neandhe-e-NZUCDRJXYYSMRTMEYIFZWDYVZVYFZUMRZCRWNZDZJJ
首先分析密文各字母出现的频数
➢ 可利用统字计母数据来破频译数仿射密字码母。 频数
A
2
N
1
例 3.1 假设B Oscar 从1仿射密码中O 截获了如1 下密文:
FMXVEDKAPHCFERBNDKR0XRSREFMORPUDSDKDVSH2VUFEDKAPRKD
LYEVLRHHRH D
7
Q
0
E
5
R
8
因为已经假设 Z 解密成 e,可以注意一下形如—Z 或 Z -的两字母组。发现出现较多的两字母是 DZ 和 ZW(各 4 次);NZ 和 ZU(各 3 次);RZ,HZ,XZ,FZ,ZR,ZV,ZC,ZD 和 ZJ(各 2 次)。因为 ZW 出现 4 次而 WZ 一次也未出现,同时 W 比许多其它字母出现的次数少,所以我们可以假定 dK (W ) d 。又因为 DZ 出现四次而 ZD 出现 2 次,故可猜 测 DK (D) {r, s,t} 。
➢ 12 个最常见的三字母组是(出现次数递减): THE,ING,AND,HER,ERE,ENT,THA,NTH,WAS,ETH,FOR 和 DTH。