第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古典密码之古典密码分析
密码学原理唯密文攻击分析古典密码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仍无效。
古典密码的加密和破译
古典密码的加密和破译组员:庄子元徐诚李金辰钱辰卢稼羿指导老师:王孙斌研究背景:现今网络安全越来越受人重视,密码是一个非常重要的环节。
现代密码是自从二战发展起来的,但由于难度较高,所以本小组研究它的前身古典密码,来对其有一个初步的了解。
研究目标及意义:了解古典密码的起源及发展,了解一些加密和解密过程,掌握一些基本的加密方法,和简单密码的破译,对古典密码有一个更深入的了解。
研究方案:通过网络途径和对图书馆有关书籍的查阅,并询问指导老师,获得一些基本了解后,组内自行设计密码并交换解密,加深了解。
即文献法和自主探究法。
研究成果:关于密码的起源:在人类历史上,对信息保护的需求与对信息本身的需求一样久远。
第一个用于加密和解密文本的编码方式是凯撒密码。
凯撒密码是一种移位密码。
密码加密方法密码的加密种类:密码一般加密方式分为移位和代换两种。
移位法换位法又称置换法或变位法。
换位法改变明文元素的相对位置,但保持其内容不变。
例如,把明文的字母重新排列组合,改变它们在明文中的位置,但字母本身不变。
这种换位可以是一维的,也可以是多维的。
最简单的换位密码是将明文的顺序颠倒过来,然后截成固定长度的字母组作密文。
例如,明文为this cryptosystem is not secure,用这种加密方法加密后以4位为一组,则得到密文ERUC、ESTO、NSIM、ETSY、SOTP、YRCS、IHT。
(为了清楚起见,这里用小写字母表示明文,而用大写字母表示密文。
)凯撒密码:移位密码的代表之一就是凯撒密码,当年恺撒曾用此方法与其将军们进行联系。
凯撒密码就是将字母按字母表顺序向后移动几个。
如cryptography——etarvqitcfja,所给的加密示例就是将字母向后移动两格。
但是此种加密方式易被破解,所以凯撒密码在不断的演变后成为了更复杂的加密方式的其中一个部分,如维吉尼亚密码。
维吉尼亚密码:人们在单一恺撒密码的基础上扩展出多表密码,称为“维吉尼亚”密码。
《应用密码学》胡向东版习题和思考题答案
第1章绪论1-1为什么会有信息安全问题的出现?答题要点:(1)当今知识经济社会,信息资源是重要的资源形式,大到一个国家、小至某一个人,拥有的信息资源越多、越早获取到信息资源,就在整个国家安全、经济与社会竞争中处于更有利的地位;(2)网络自身的安全缺陷难以堵住安全漏洞;(3)网络的开放性特征为攻击者提供了方便之门;(4)人为因素,包括人的无意失误、黑客攻击、管理不善等。
1-2简述密码学与信息安全的关系。
答题要点:密码技术是实现网络信息安全的核心技术,是保护数据最重要的工具之一。
通过加密变换,将可读的文件变换成不可理解的乱码,从而起到保护信息和数据的作用。
它直接支持机密性、完整性和非否认性。
密码学尽管在网络信息安全中具有举足轻重的作用,但密码学绝不是确保网络信息安全的唯一工具,它也不能解决所有的安全问题。
密码编码与密码分析是一对矛和盾的关系。
1-5安全机制是什么?主要的安全机制有哪些?答题要点:所谓安全机制,是指用来保护系统免受侦听、阻止安全攻击及恢复系统的机制。
OSI安全框架-X.800方案的安全机制可分为两类:特定的安全机制和通用的安全机制。
主要的安全机制(略)。
1-6什么是安全服务?主要的安全服务有哪些?答题要点:安全服务就是加强数据处理系统和信息传输的安全性的一类服务,其目的在于利用一种或多种安全机制阻止安全攻击。
主要的安全服务包括:机密性(消息内容析出,通信量分析)、完整性、鉴别、非否认性、访问控制、可用性。
1-8什么是主动攻击和被动攻击,各有何特点?答题要点:主动攻击是指攻击者对连接中通过的PDU进行各种处理,这些攻击涉及某些数据流的篡改或一个虚假流的产生。
主动攻击包括四类:中断、篡改、伪造和重放。
主动攻击表现出与被动攻击相反的特点。
完全防止主动攻击是相当困难的,可采取适当措施(如加密技术和鉴别技术相结合)加以检测。
被动攻击的攻击者只是观察通过一个连接的协议数据单元PDU,以便了解所交换的数据,并不干扰信息流。
古典密码体制
为k=k1k2...kn,明文 M=m1m2...mn,则加密变换为Ek(m1m2...mn)=(m1+k1 mod
26,m2+k2 mod 26,....mn+kn mod 26)。
其他替代密码
一般单表替代密码:通过建立一张“明文-密文”对照表来实现加密。一般单表替 代密码首先要建立一张字母替换表。 仿射密码:属于单表替代密码的一种,是一种线性变换。 密钥短语密码:选用一个英文短语或单词作为密钥,先去掉其中重复的字母得到
一个无重复字母的字符串,然后再将英文字母表中腊的斯巴达人使用一种叫作scytale的棍子来传递信息。 ② 棋盘密码:是将26个英文字母写在5X5的表格中每个字母对应的密文由行号和列号对应的数字组成。
移位密码(凯撒密码)
函数表达式: 加密变换:Ek(m)=m+k(mod26)(m∈M,k∈K);
解密变换:Dc(c)=c-k(mod26)(c∈C,k∈K)。
例题: 设明文为killthem,密钥为gun试用维吉尼亚密码对明文进行加密 解:明文对应的数字为:10 8 11 11 19 7 4 12 密钥对应的数字为:6 20 13 6 20 13 6 20 相加取余数变换后:16 2 24 17 13 20 10 6 对应的密文是: h c y r n v w g
后,就可以构造出一个字母替代表。 希尔密码:是一种特殊的多表替代密码。利用矩阵变换来对信息实现加密。
置换密码
置换密码: 是指变换明文中各元素的相对位
置(即对各元素进行换位),但保持其内容
第3章古典密码体制续--密码分析
下一步我们可以试试 d K ( N ) h , 因为 NZ 是一个常见的两 字母组而 ZN 不是常见的两字母组。如果这个猜测是正确 的,则明文 ne-ndhe 很可能说明 d K (C ) a 。于是有: ------end-----a---e-a--nedh--e------a----YIFQFMZRWQFYVECFMDZPCVMRZWNMDZVEJBTXCDDUMJ h-------ea---e-a---a---nhad---en--a-e-h--e NDIFEFMDZCDMQZKCEYFCJMYRNCWJCSZREXCHZUNMXZ he-a-n------n------ed---e---e--neandhe-e-NZUCDRJXYYSMRTMEYIFZWDYVZVYFZUMRZCRWNZDZJJ -ed-a---nh---ha---a-e----ed-----a-d--he--n XZWGCHSMRNMDHNCMFQCHZJMXJZWIEJYUCFWDJNZDIR
因为已经假设 Z 解密成 e, 可以注意一下形如—Z 或 Z -的两字母组。发现出现较多的两字母是 DZ 和 ZW(各 4 次);NZ 和 ZU(各 3 次);RZ,HZ,XZ,FZ,ZR,ZV,ZC,ZD 和 ZJ(各 2 次)。因为 ZW 出现 4 次而 WZ 一次也未出现,同时 W 比许多其它字母出现的次数少,所以我们可以假定
字母 频数 字母 频数 A 2 N 1 可利用统计数据来破译仿射密码。 B 1 O 1 例 3.1C假设 Oscar 0 从仿射密码中截获了如下密文: P 2 FMXVEDKAPHFERBNDKRXRSREFMORUDSDKDVSHVUFEDKAPRKD D 7 Q 0 E 5 R 8 LYEVLRHHRH 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
密码学概述
在第二次世界大战中,密码的应用与破译成为影响战争 胜负的一个重要因素。如,1940年太平洋战争中,美军破 译了日军所使用的密钥;在后来的中途岛海战中,日军再 次使用了同样的密钥,电报被美军截获后成功破译,使得 其海军大将的座机被击落。
明文 hello world
密钥:K=5 密文 mjqqt btwqi
解密算法:(C-K) mod 26
22
3. 密码系统数学模型
发送信息的一方使用密钥K加密明文M,通过加密 算法得到密文C,即C = EK(M);接收信息的一 方使用密钥K’解密密文C,通过解密算法得到明文 M,即M = DK’ ( C );K与K’可能相等,也可能不等 ,具体取决于所采用的密码体制。
21
3. 密码系统数学模型
例如:恺撒密码体制
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
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
加密算法:(M+K) mod 26
两个分支:是既相互对立,又相互依存的科学。
16
2. 密码系统构成
密码系统主要包括以下几个基本要素:明文、密文、加密算法 、解密算法和密钥。
明文(plaintext):希望得到保密的原始信息。
密文(ciphertext):明文经过密码变换后的消息。
加密(encryption):由明文变换为密文的过程。 解密(decryption):从密文恢复出明文的过程。
古典密码体制
B:3
11111111 00000011 00000011
2.1.3 电子隐藏技术
隐写工具
Steganos S-Tools (GIF, JPEG) Eshow StegHide (WAV, BMP) Invisible Secrets (JPEG) JPHide Camouflage Hiderman Many others…
1
2.2.1替换密码:分类
利用预先设计的代替规则,对明文逐字 符或逐字符组进行代替的密码。
凯撒密码
仿射密码 单表代换密码 多表代换密码
2.2.2 替换密码:凯撒密码
26
是一种对英文字母的典型逐字母加密的密码。
例如: A B CF
C
D D
TW
E
F
XA
G…… X
Y B
Y
Z
2.2.4替换密码:单表代替密码
英语中有26个字母 密钥总量:
天河机以每秒2.57千万亿次的速度来计算,若一 次运算能检验可能密钥中的一条,则检查完所有 的密钥并破解信息花费的时间大概是500年
公元九世纪,阿拉伯密码破译 专家,击破单表替换密码!
34 2.2.4替换密码:单表代替密码
e:出现频率约为0.127 t,a,o,i,n,s,h,r:出现频率约在0.06到0.09之间 d,l:的出现频率约为0.04 c,u,m,w,f,g,y,p,b :出现频率约在0.015到0.028之间
2.2.4替换密码:单表代替密码
有了上面的提示, 我们很容易确定出明文和例中的密 钥,解密明文如下: Our friend from Paris examined his empty glass with surprise, as if evaporation had taken place while he wasn’t looking. I poured some more wine and he settled back in his chair, face tilted up towards the sun.
古典密码的演化(二)—密码学复习(三)
古典密码的演化(⼆)—密码学复习(三)前⾯介绍了⼏种古典密码算法(凯撒密码、仿射密码、维吉尼亚密码、希尔密码、置换密码),下⾯将对其中的⼏种密码算法站在攻击者的⾓度进⾏分析。
三、密码破译密码破译的原则:遵循观察和经验⽅法:采⽤归纳与演绎步骤:分析、假设、推测和证实三⼤要素:①语⾔频率特征:如E出现频率最⾼;②连接特征:q...u,Iex.③重复特征:th,tion,tious.3.1 单表代换——密码分析利⽤统计数据获得密码分析。
例:假设从仿射密码获得的密⽂为:FMXVE D KAPHFE R BN D K R X R S R EFMO R U D S D K D VSHVUFE D KAP R K D LYEVL R HH R H.通过上⾯的57个密⽂字母,就可以分析仿射密码。
最⾼频率的密⽂字母:R——8次 D——7次 E、H、K——各5次 F、S、V——各4次根据已知的26个英⽂字母的概率分布表: E——0.127 T——0.091 A——0.082 O——0.075①假定R是E的加密,D是T的加密数值化后有:e k(4)=17 d k(19)=3⽽加密函数 e k(x)=ax+b.可以得到两个包含两个未知数的线性⽅程组:4a+b=1719a+b=3解得 a=6,b=19 (mod 26)这是⼀个⾮法密钥,因为gcd(6,26)=2≠1,所以假设不成⽴。
②假设R是e的加密,E是t的加密,解得 a=13,gcd(a,26)=13≠1,故此时假设不成⽴。
③假设R是e的加密,K是t的加密,此时解得 a=3,b=5.⾄少这是⼀个合法密钥。
接着计算k=(3,5)时的解密函数,之后对密⽂进⾏解密,观察的到的明⽂是否有意义。
容易验证a=3,b=5是⼀个有效密钥,解得明⽂为:Algorithms are quite general definitions of arithmetic process.3.2 多表代换——密码分析3.2.1 希尔密码对希尔密码进⾏已知明⽂分析。
古典密码及分析
2
第 1 章 古典密码
设 P = { m1,m2,…,mn };C = { c1,c2,…,cm }。即可能的明文元素有 n 个,密文元素有 m 个。从实用角度看,应该有 m≥n,否则不同的明文将映射到相同的密文。因为加、解密变 换必须是互逆的,所以 E 和 D 都是一一映射。容易求出从 P 到 C 的一一映射的数目有: ∣S∣= m×(m-1) ×(m-2) ×…×(m-n+1) = m!/(m-n)! (1.3) 由此可见,当 m,n 较大时,可能的加密和解密变换对的数目是十分巨大的。从理论上说, 从 P 到 C 和从 C 到 P 的任意一对互逆映射都可以用来构成一个密码算法。 但在实际应用中, 在已知密钥的条件下,密码算法的计算必须是简洁有效的,而在不知道密钥的条件下,解密 计算应该是不可行的。所以构造密码算法时,必须从∣S∣个一一映射中选取那些可以用解 析表达式或某些确定的规则来表达明文和密文关系的一一映射。 设 K = { k1, k2,…, kp },则密钥数︱K︱= p。由于加解密变换的选择是由密钥来确定的, 因此,对于密钥空间的密钥数应该有:∣K∣≥∣S∣。在∣K∣>∣S∣的情况下,会出现 不同的两个密钥对应同一个加密变换, 从而产生相同加密结果的情况。 这时称这两个密钥为 等价密钥。 由于等价密钥的存在, 破译者可能不需要找到加密时使用的那个特定密钥也可以 进行破译, 使密码系统的安全性降低。 因此, 在选择密钥时要注意避开可能存在的等价密钥。 值得指出的是,即使在∣K∣<∣S∣时,也不能排除存在等价密钥的可能性。因此,即使 在∣K∣<∣S∣的情况下,也应注意等价密钥问题。
4
第 1 章 古典密码
对应的密文为: MJCBNLDAQCH 由此可见,密钥改变时加密的结果也发生变化。 只要知道编码方式和密钥 k,加法密码的解密是十分简单的:m = c – k mod 26。 单用换位法和替代法构成的密码都比较简单, 一般都经不起攻击。 但以后我们可以看到, 若把它们结合起来使用,可以得到非常有效的密码系统。
第3讲古典密码体制
2 移位密码(Shift Cipher)
定义: 设P = C = K = Z26,对0 k 25,即kK,
x , yZ26,定义 加密函数:E k(x) = (x + k )( mod 26 ) 解密函数:D k(y) = (y-k)( mod 26 )
2 移位密码(Shift Cipher)
P , yC,定义:
加密函数:E(x) = (x) 解密函数:D (y) = -1(y) 这里的 -1是置换的逆置换。
5 替代(代换)密码(Substitutions Cipher)
替代密码也可以认为P和C是 26个英文字母。可简单地将替代 密码的加解密函数看作是一个字 母表上的字母之间的置换。而且 也可以使明文字母表P与密文字 母表C不一样。
b c ( mod m ), 则 a c ( mod m )
2 移位密码(Shift Cipher)
模的同余性质 :
(4) ( a +b )( mod m ) a ( mod m )+ b ( mod m )
(5) ( ab )( mod m ) a ( mod m )b ( mod m )
对于移位密码(模26)的明显的 弱点就是密钥空间太小。因 | Z26| = 26,所以密钥仅有26种可能值, 用密钥穷搜索方法很容易破译。
3 维吉尼亚密码(Vigenere Cipher)
设m是一个正整数。设P = C = K = (Z26)m,( Z26m = Z26 Z26… Z26 表示Z26的m次直积)。对于k=(k1, k2,…km)K,定义: 加密函数:Ek(x1,x2,…xm) =
2 移位密码(Shift Cipher)
则
(ⅰ)若a b ( mod m ),那么f(a) f(b) ( mod m )
- 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。