[工学]第3章 应用密码学-古典密码的统计分析

合集下载

密码学-古典密码

密码学-古典密码
每组中的两个字母H不ill 同体。制
P 中同行, 为紧靠各自右端的字母 P 中同列, 为紧靠各自下方的字母
密文 非同行同列, 为确定矩阵的对角字母
2. Vigenere体制
设明文m = m1m2…mn,k = k1k2…kn,则密文 c = Ek(m) = c1c2…cn,
其中ci = (mi + ki) mod 26, i = 1, 2, …, n。 当密钥的长度比明文短时,密钥可以周期性地
4. Vernam体制
Vernam密码在加密前首先将明文编码为(0, 1)字符串。
设明文m = m1m2…mn,k = k1k2…kn,其中mi , ki∈GF(2) , 则密文c = c1c2…cn ,其中
ci = mi⊕ki , i ≥1。
在用Vernam密码对明文加密时,如果对不同的明文使 用不同的密钥,则这时Vernam密码为“一次一密”(onetime pad)密码,在理论上是不可破译的。如果存在不 同的明文使用相同的密钥,则这时Vernam密码就比较 容易被破译。
例2.5(P16)
2.3.2 多表古典密码的统计分析
在多表古典密码的分析中,首先要确定密钥字的长度, 也就是要首先确定所使用的加密表的个数,然后再分析确 定具体的密钥。
确定密钥字长的常用方法有:
设设 设
对任意
对任意
密文
对任意
密其密文中文其的中乘的法加都法是都模是q 模乘q法加. 法显.然显, 然简,单简乘单法
密加码法的密密码钥的量密为钥量为
其中的加法和乘法都是模q 加法和乘法.
显然, 简单仿射密码的密钥量为
2. 2 几种典型的古典密码体制
几种典型的单表 古典密码体制

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

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

如前面的猜测,假设 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
➢ 首先考虑最弱类型的攻击,即唯密文攻击。
➢ 假设明文串是不包括标点符号及空格的普通英文 文本。

第3章 古典密码学

第3章 古典密码学
表2.3 密钥为cipher的维吉尼亚密码加密过程
密文为:cxtsmvfkgftkqanzxvo。 解密使用相同的密钥,但用模26的减法代替模26加法,这里 不再赘述。
17
多表代换密码
3.一次一密密码(One Time Pad) 若替代码的密钥是一个随机且不重复的字符序列,这种密码 则称为一次一密密码,因为它的密钥只使用一次。 该密码体制是美国电话电报公司的Gilbert Vernam在 1917年为电报通信设计的一种密码,所以又称为Vernam 密码。后来被陆军情报军官Joseph Mauborgne改进。 Vernam密码在对明文加密前首先将明文编码为(0,1)序 列,然后再进行加密变换。 设m=(m1 m2 m3 … mn)为明文,k=(k1 k2 k3 … kn )为密 钥,其中mi,ki ∈(0,1), i≥1, 则加密和解密变换为,这里为 模2加法(或异或运算): c=(c1 c2 c3 … cn) , 其中ci = mi ki , i≥1
• 将Caesar密码一般化,取任意的整数k作为密钥:
加密变换: c=E(k,p)=(p + k) (mod 26) 解密变换: p=D(k,c)=(c – k) (mod 26)
9
一般单表; • 一般单表替代密码的原理是以26个英文字母集合上 的一个置换π为密钥构造代换表,对明文消息中的每 个字母依次进行变换。 • 例:设置换π的对应关系如下: abcdefghi jklmnopqrstuvwxyz qwertyuiopasdf ghjklzx cvbnm 试用单表替代密码以π为密钥对明文消息message 加密,然后写出逆置换 ,并对密文解密。 解:密文消息为: π(m)π(e)π(s)π(s)π(a)π(g)π(e)=dtllqut

应用密码学第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 代替
• 就是明文中的字母由其他字母、数字或符号所取 代的一种方法

应用密码学习题答案3

应用密码学习题答案3

《应用密码学》习题和思考题答案第3章古典密码3-1 举例说明什么是隐写术。

答:隐写术就是隐藏消息的存在,这种方法通常在一段看来无伤大雅的文字中嵌入排列一些词汇或字母隐含地表达真正的意思。

例子略。

3-2 区别隐写术与密码编码学。

答:密码编码学是通过各种文本转换的方法使得消息为外部不可理解。

隐写术则是隐藏消息的存在,它本质上不是一种编码加密技术,这种方法通常在一段看来无伤大雅的文字中嵌入排列一些词汇或字母隐含地表达真正的意思。

隐写术的优点在于能够被某些人使用而不容易发现他们间在进行秘密通信。

而加密则很容易被发现谁与谁在进行秘密通信,这种发现本身可能具有某种意义或作用。

隐写术与加密技术相比有一些缺点:(1)它形式简单但构造费时,要求有大量的开销来隐藏相对较少的信息。

(2)一旦该系统的构造方法被发现,就会变得完全没有价值。

(3)隐写术一般无稳健性,如数据改动后隐藏的信息不能被恢复。

3-3 区别代替与换位。

答:代替就是将明文字符用另一个字符取代,代替密码操作的目的是制造混乱,使得确定消息和密钥是怎样转换成密文的尝试变得困难。

换位就是重新排列消息中的字母,以便打破密文的结构特性。

即它交换的不再是字符本身,而是字符被书写的位置。

3-4 频率分析的基本处理方法是什么?答:频率分析攻击的一般方法:第一步:对密文中出现的各个字母进行统计,找出它们各自出现的频率。

第二步:根据密文中出现的各个字母的频率,和英语字母标准频率进行对比分析,做出假设,推论加密所用的公式。

第三步:证实上述假设(如果不正确,继续作其他假设)。

3-5 使用穷举搜索法,破译如下利用代替密码加密的密文:BEEAKFYDJXUQYHYJIQRYHTYJIQFBQDUYJIIKFUHCQD解:因此,本题的解密结果应为:Look up in the air,it’s a bird, it’s a plane, it’s superman。

提示:表中最左边一列的数字表示代替变换时字母的后移位数。

02 古典密码及分析

02 古典密码及分析


已知明文攻击,known plaintext

选择明文攻击,chosen plaintext

选择密文攻击,chosen ciphertext

选择文本攻击,chosen text

西安电子科技大学计算机学院
7
基于密码分析的攻击
Cryptanalytic Attacks
An algorithm that meets one or both of the following criteria:
An encryption scheme is said to be computationally secure if either of the foregoing two criteria are met.
unconditionally secure
8
西安电子科技大学计算机学院
穷举攻击
Key Size (bits)


西安电子科技大学计算机学院
15
对称密码模型
(Symmetric Cipher Model)
西安电子科技大学计算机学院
16
西安电子科技大学计算机学院
17

对称密码安全的两个必备条件:

加密算法必须是足够强的 a strong encryption algorithm 惟有发送者和接收者知道的秘密密钥 a secret key known only to sender / receiver C = EK(P) P = DK(C)
10
密码学的发展历史

第1阶段:1949年以前

1949年以前的密码技术可以说是一种艺术,而不是一种科 学,那时的密码专家是凭直觉和信念来进行密码设计和分 析的,而不是靠推理证明。

古典密码学ppt课件

古典密码学ppt课件
可用的信息 多码加密的基础依旧是关键词加密 关键词在明文上重复书写,导致有可能一个字母对应多个替换
古典多码加密法:Vigenere密码的分析
关键词在明文上重复书写 密钥的重复部分与明文中的重复部分的关联,在密文中也产生 一个重复部分
推测关键词的长度:为了使关键词本身与重复的明文对齐,重复明 文之间的间距是关键词长度的整数倍 找到密文中重复的字符部分,并计算它们之间的“距离”(字符 数); 计算所有“距离”的因子; 最大公约数很可能就是关键词的长度。
暗示三
所有数字都是由1-5以内的数字组成——暗合棋盘密
古典密码编码学之外:最牛游戏玩家
密码学破译隐藏任务
信息理论意义上的安全性是无条件的并且能够抵抗任何方法的密码分析!!
古典密码编码学之外:使用和安全性
古典密码安全使用的条件
#K ≥ #M; k∈UZn,且每次加密只使用一次——对加密少量数据是实用的,例如依
次随机数、会话密钥等。
古典密码编码学之外:最牛游戏玩家
密码学破译隐藏任务
游戏《大航海时代Online》
古典多码加密法:Vigenere密码
Vigenere密码是基于关键词的加密系统。 Vigenere密码不同于单码关键词加密,它将关键词写在明文的上面,
并不断重复书写,这样每个明文字母都与一个关键词的字母关联。 例一:关键词为“hold”,那么关键词-明文的关联如下
hol dhol dhol dhol dho t hi s i s t hepl ai nt e xt
古典多码加密法:Vigenere密码
Vigenere表
明文
密文
古典多码加密法:Vigenere密码
加密过程:给定一个密钥字母k和一个明文字母p,密文字母就是位 于k所在的行与p所在的列的交叉点上的那个字母。

第4讲 数据加密技术(古典密码)

第4讲 数据加密技术(古典密码)

字 X XYZAB C D EF G H I J K LM N O PQ R STUVW 母 Y YZABCDEFGHIJKLMNOPQRSTUVWX Z ZAB CD EFG H I J KLM N O PQR STUVWXY
一、古典密码 一、古典密码
Vigenre密码的代替规则是用明文字母在Vigenre 密码的代替规则是用明文字母 明文字母在 方阵中的列和密钥字母 方阵中的列和密钥字母在Vigenre方阵中的行的交 密钥字母在
一、古典密码 一、古典密码
⑵、多表代替密码
• 单表代替密码的安全性不高,一个原因是 单表代替密码的安全性不高,
一个明文字母只由一个密文字母代替。 一个明文字母只由一个密文字母代替。
• 构造多个密文字母表, 构造多个密文字母表, • 在密钥的控制下用相应密文字母表中的一个字
母来代替明文字母表中的一个字母。一个明文 母来代替明文字母表中的一个字母。 字母有多种代替。 字母有多种代替。
一、古典密码 一、古典密码
⑴单表代替密码 ①、加法密码 • A和B是有 n个字母的字母表。 个字母的字母表。 • 定义一个由A到B的映射:f:A→B 定义一个由A 的映射:
f(ai )= bi=aj j=i+ j=i+k mod n • 加法密码是用明文字母在字母表中后面第 k 个字母来代替。 个字母来代替。 • K=3 时是著名的凯撒密码。 时是著名的凯撒密码。
一、古典密码 一、古典密码
扩散: 扩散:将每一位明文和密钥的影响 扩大到尽可能多的密文位中。 扩大到尽可能多的密文位中。
“扩散”是一种将明文冗余度分散到密文中的方 法,即将单个明文或密钥位的影响尽可能扩大 到更多的密文中去,不仅将统计关系隐藏起来, 也使密码分析者寻求明文冗余矿度增加了难度。 最简单的“扩散”方法是“置换 (Permutation)”法。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

的重合指数,应该更接近0.038。
现代密码学
解放军信息工程大学电子技术学院
用交互重合指数确定密钥的具体内容
定义 设X=x1x2…xn和Y=y1y2…yn,是两个长度分别
为n和n’的字母串。X和Y的交互重合指数(mutual
index of coincidence)定义为X中的一个随机元素与Y 中的一个随机元素相同的概率,记为 MI c ( X , Y )
给定某一行,猜测其密钥值(只有26种可能),其
它行的密钥由相对位移唯一确定,这时用穷举法
只有26种可能,可得到密钥值。
现代密码学
解放军信息工程大学电子技术学院
习题
1、已知某密码的加密方法为:先用易位密码 对明文M加密,再对该结果用维吉尼亚密 码加密得密文C。若易位密码使用的加密密 钥为置换T=(351246),维吉尼亚密码使 用的加密密钥为AEF,密文 C=vemaildytophtcmystnqzahj, 求明文M。 现代密码学
解放军信息工程大学电子技术学院
习题1解答:
解:加密密钥为置换T=(351246),则脱密 密钥为置换T’=(341526) 用维吉尼亚密码脱密得结果 vahaeg duoolc tykyoo nmuade 再使用易位密码脱密得明文M haveagoodluckytoyouandme
现代密码学
解放军信息工程大学电子技术学院
反之则不然。
若密文中出现两个相同的密文段(密文段的长度m>2), 则它们对应的明文(及密钥)将以很大的概率相同。
现代密码学
解放军信息工程大学电子技术学院
思考:以多大的概率成立?
P(X1=X2|Y1=Y2) =1-P(X1!=X2;K1!=K2|Y1=Y2) 由于密钥是等概独立的,每个密钥出现的概率为 1/26,这相当于求满足 X1+K1=X2+K2(mod26) 的K1和K2出现的概率。若K1和K2中均有m个字母, 且m>=3,则 3 1 P(X1=X2|Y1=Y2) 1 0.999999 26
k1 k2 k3 km y1 y2 y3 ym y m1 y m 2 y m3 y2m y n m1 y nm 2 y n m 3 yn
现代密码学
解放军信息工程大学电子技术学院
若m确实是密钥的长度,则上述矩阵中的每一行
都是由同一个密钥ki加密得到,这说明每一行即是一 个单表代替,这时计算每一行的重合指数,应该更接 近0.065; 若m不是密钥的长度,则上述矩阵中的每一行不 是由同一个密钥ki加密得到,这说明每一行是一个等 概随机的字母串(对密文的要求),这时计算每一行
i 0 25
=0.065
现代密码学
解放军信息工程大学电子技术学院
对于英文的一个随机字母串,每个英文字
母出现的期望概率均为1/26,则在X中任
意选取两个元素相同的概率为
1 Ic i 0 26
25 2
=0.038.
现代密码学
解放军信息工程大学电子技术学院
根据Kasiski测试法得到的m,可以将密文Y按照下列形式排 列: 表1 将Y排列成m行n/m列的形式,设m=0(modn)
n (n 1) 2
选取
2 的可能;在X中的每个相同的字母中选取两个元素共有 Cn
C2 fi
f i ( f i 1) 2
现代密码学
解放军信息工程大学电子技术学院
已知每个英文字母出现的期望概率,分别记为
p0,p1,…,p25,那么X中两个元素相同的概率
为:
I c ( X ) pi2
解放军信息工程大学电子技术学院
习题
2、已知某密码的加密方法为:C=f2(f1(M)) 其中变换f1为:c=(7m+5)mod26; 变换f2为置换T=(31254), 今收到一份用这种密码加密的密文 C=ficxsebfiz,求对应的明文M。 f1的逆为: m=15(c-5)mod26=(15c+3)mod26 现代密码学
现代密码学
解放军信息工程大学电子技术学院
汉字中双音节词出现频率
从三亿汉字的母体材料中,抽样二千五百万字进行双音 节词词频统计,结果是:
频率在一万次以上的双音节词有33个:
我们 可以 他们 三万次以上 二万次以上
进行 没有 工作 人民 生产 这个 发展 就是 问题 国 家 中国 这样 革命 自己 不能 由于 这些 所以 因此
则 (ki k j ) mod26 称为 Yi 和 Y j 之间的 相对位移(relative shift),用 l 表示。
由于
p
h 0
25
h
p h l p h p h l
h 0
25
现代密码学
解放军信息工程大学电子技术学院
计算具体密钥内容





当相对位移不为0时,重合指数的取值范围 [0.031,0.045] 当相对位移为0时,重合指数取值为0.065。 可以统计每两行中英文字母出现的概率f0,f1,…,f25 和f’0,f’1,…,f’25 记Y jg 为以 g 作密钥进行加法加密得到的密 g l ,则应该接近0.065; 若不然,应该接近[0.031,0.045]中的某个值。
Kasiski测试法:Kasiski于1863年提出 寻找密文中相同的片段对,计算每对相同密文片段对 之间的距离,不妨记为d1,d2,…,di,若令密钥字的长度为 m,则m=gcd(d1,d2,…,di)。 定理1 若两个相同的明文片段之间的距离是密钥长度 的倍数,则这两个明文段对应的密文一定相同。
习题2解答:
解:f1的逆为: m=15(c-5)mod26=(15c+3)mod26 f2的逆为:T‘=(23154) 则对C做f2的逆变换得:icfsxbfezi 再做f1的逆变换得:thanksalot。
现代密码学
解放军信息工程大学电子技术学院
下节课讲授的主要内容
Shannon理论

密码体制的数学模型 熵及其性质
<1%
现代密码学
解放军信息工程大学电子技术学院
汉字中单音节出现频率 最常用,出现频率在百分之一以上的有14个音节,它 们是:
de shi yi bu you zhi le ji zhe wo yen li ta dao
的 是一不 有 之 了机 这 我 们 里他 到
次常用音节有33个,它们是:
zhong zi guo shang ge men he wei ye da gong jian jiu xiang zhu lai sheng di zai ni xiao ke yao wu yu jie jin chan zuo jia xian quan shuo
现代密码学
解放军信息工程大学电子技术学院
重合指数法(index of coincidence):Wolfe
friendman于1920年提出
进一步判断密钥字的长度是否为 m=gcd(d1,d2,…,di). 定义1 设X=x1x2…xn是一个长度为n的英文字母 串,则x中任意选取两个字母相同的概率定义为重合指
现代密码学
解放军信息工程大学电子技术学院
K1+i,i=0,……,25
K1-k2=5
k1 k2 k3 k5
y1 y2 y3 y5
y6 y7 y8 y10
yn m 1 yn m 2 yn m 3 yn
现代密码学
解放军信息工程大学电子技术学院
计算具体密钥内容的复杂度分析
这样可以得到任意两行之间的相对位移。
作用 一般 什么 如果 情况 必须 方法 因为 主要 要
求 社会
现代密码学
解放军信息工程大学电子技术学院
多表古典密码的统计分析
步骤1:首先确定密钥的长度:利用Kasiski测试法 和重合指数法(index of coincidence) 步骤2:确定具体的密钥内容:交互重合指数法
现代密码学
解放军信息工程大学电子技术学院
数,用 I c ( x) 表示。
现代密码学
解放军信息工程大学电子技术学院
定理1
设英文字母A,B,…,Z在X中出现的次数分别为:
f0,f1,…,f25
则从X中任意选取两个字母相同的概率为
Ic (X )
f (f
i 0 i
25
i
1)
n(n 1)
证明
在X中任意选取两个字母共有种 种选取的可能。故易证。证毕。
现代密码学
古典密码的统计分析
王 滨 2005年3月4日
解放军信息工程大学电子技术学院
上次课内容回顾
代替密码 单表代替密码的概念及安全性特点 多表代替密码的概念及安全性特点 几个典型的古典密码体制 卡撒密码 维及尼亚密码 维福特密码

现代密码学
解放军信息工程大学电子技术学院
单表古典密码的统计分析 原理:明文的统计规律在密文中能够反映出 来,故信息泄露大。 多表古典密码的统计分析 原理:密钥相同时,相同的明文对应相同的 密文。 现代密码学
现代密码学
解放军信息工程大学电子技术学院
计算表1中的任意两行之间的交互重合指数
Yi 中的一个随机元素与 Y j 中的一个随
机元素同为字母h(0<=h<26)的概率为
MI c (Yi , Y j ) phki phk j ph phk j ki
h 0 h 0 25 25
解放军信息工程大学电子技术学院
现代密码学
解放军信息工程大学电子技术学院
明文的统计规律
26个英文字母: e t---a---o---i---n---s---h---r 12% 6%--9%
相关文档
最新文档