第2讲--古典密码
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
13
2.标准字头密码(又称密钥字密码)
这是一种置换密码,它利用一个密钥字来 构造置换表。 如: 若选择cipher作为密钥字,则对应置换表为: 明文 A B C D E F G H I J K L M N O P … 密文 C I P H E R A B D F G J K L M N …
14
28
2. 多表代替的优缺点 密钥序列是随机序列意味着: (1)密钥序列不能周期重复; (2)密钥序列必须与明文序列等长; (3)这些序列必须在通信前分配完毕; (4)大量通信时不实用; (5)分配密钥和存储密钥时安全隐患大。 缺点:周期较短时可以实现唯密文攻击。 解决方案:密钥序列有少量真随机的数 按固定的算法生成,只要它很像随机序列即可。 这种序列称为伪随机序列。
当密钥的长度比明文短时,密钥可以周期性地重复使用,直 至完成明文中每个字母的加密。
19
这也是序列密码的一般加密形式
0 起 算
明文字母
维 几 利 亚 密 码 的 代 替 表 为
20
密 钥 字 母
密 钥 字 母 为 d , 明 文 字 母 为 b 时
查 表 得 密 文 字 母 为 e
例 设m=6,且密钥字是CIPHER,这相应于密钥。假定明文串是 this cryptosystem is not secure 首先将明文串转化为数字串,按6个一组分段,然后模26“加”上 密钥字得:
17
设密钥矩阵:
P=
c r g o v
i p h e a b d f k l m n q s t u w x y z
明文为: playfair cipher was actually invented by wheatstone 密文为 Bs dw rb ca ip he cf ik qb ho qf ks mx ek zc 18 mu hf dx yi if ut uq uf
4
上节课补充内容-密码算法的分类
明文处理方式 分组密码(block cipher) 将明文分成固定长度的组,用同一密钥 和算法对每一块加密,输出也是固定长度的密 文。 流密码(stream cipher) 又称序列密码。序列密码每次加密一位 或一字节的明文。
5
第二章 古典密码
学习本章目的:
15
安全性分析
–
Biblioteka Baidu
置换密码的密钥是由26个字母的置换组成。这些置 换的数目是26!,一个非常大的数。这样即使对现 代计算机来说,穷举密钥搜索也是不可行的。然而, 以后我们会看到,置换密码容易被其他的分析方法 所破译。
16
2.2.2 几种典型的多表古典密码体制
1.playfair 密码 英国陆军在第一次世界大战,美国陆军在第二次世界大战期间大 量使用的一种二字母组代替密码。密钥由26个英文字母组成五 阶方阵。 加密时,首先在明文字母串的适当位置插入一些特定的字母,譬 如字母q,使得明文字母串的长度为偶数,将明文串按两个字母 一组进行分组。 m1,m2同行:c1,c2在它们右边; m1,m2同列: c1,c2在它们下边; m1,m2不同行列: c1,c2是m1,m2 组成的长方形的另两个顶点; 明文由奇数个字母组成,则在明文后加一无效字母
1. 学习基本的密码编制原理;
2.了解早期编制密码的基本方法; 3. 为进一步学习现代密码的编制打下
基础。
6
2.1 古典密码中的基本加密运算
单表密码体制:对于一个密码体制,如果明文 字母对应的密文字母在密文中保持不变,则称 其为单表密码体制; 多表密码体制:如果明文中不同位置的同一明 文字母在密文中对应的密文字母不同,则称其 为多表密码体制。
2
上节课补充内容-密码算法的分类
保密内容 受限制的(restricted)算法 算法的保密性基于保持算法的秘密 基于密钥(key-based)的算法 算法的保密性基于对密钥的保密
3
上节课补充内容-密码算法的分类
密钥
对称密码算法(symmetric cipher) 加密密钥和解密密钥相同,或实质上等同,即从一个易 于推出另一个,又称秘密密钥算法或单密钥算法 非对称密钥算法(asymmetric cipher) 加密密钥和解密密钥不相同,从一个很难推出另一个 又称公开密钥算法(public-key cipher) 。 公开密钥算法用一个密钥进行加密, 而用另一个进行解密。 其中的加密密钥可以公开,又称公开密钥(public key), 简称公钥。解密密钥必须保密,又称私人密钥 (private key) ,简称私钥
29
则密文序列为: c1, c2 ,, ct ,
如果将明、密文空间均改为
Z2 {0,1}
将加密变换改为:
c Ek (m) (m k ) mod 2 m k
这个密码就是著名的Vernam密码体制
若明文序列为: m1, m2 ,, mt , 密钥序列为: k1, k2 ,, kt , 则密文序列为: c1, c2 ,, ct , 其中:
25
Hill密码
26
1. 单表代替的优缺点 优点: 明文字符的形态一般将面目全非 缺点: 明文字符相同,则密文字符也相同; 从而导致: (I) 若明文字符e被加密成密文字符a,则明文 中e的出现次数就是密文中字符a的出现次数; (II) 明文的跟随关系反映在密文之中. 因此,明文字符的统计规律就完全暴露在 密文字符的统计规律之中.形态变但位置不变
n Q
o R
p q S T
r U
s V
t W
u X
v Y
w Z
x A
y B
z C
若明文为: please confirm receipt 则密文为:SOHDVE FRQILUP UHFHLSW
12
安全性分析
–
移位密码是极不安全的(mod26),因为它可被 穷举密钥搜索所分析:仅有26个可能的密钥,尝 试每一个可能的加密密钥,直到一个有意义的明文 串被获得。平均地说,一个明文在尝试26/2=13解 密规则后将显现出来。
c Ek ( m) (k+25 m ) mod 26
m Ek (c) (k 25 c) mod 26
该密码称为维福特密码(Beaufort密码体制) 若明文序列为: m1, m2 ,, mt ,
密钥序列为: k1, k2 ,, kt ,
22
ci Eki (mi ) (ki 25 mi ) mod 26 其中:
9
2.2
10
1. Caesar密码(凯撒密码)
这是一种对英文字母的典型逐字母加密的 的加法密码,其密钥k=3。 英文字母被编码为该字母的序号 英文 A B C D … X Y Z 数字 0 1 2 3 … 23 24 25 加密变换为:
c E3 (m) (m 3) mod 26, 0 m 25
将 维几尼亚密码(Vigenere密码体制)英 文 字 母 编 码 若明文序列为: m1, m2 ,, mt , 为 它 密钥序列为: k1, k2 ,, kt , 的 则密文序列为: c1, c2 ,, ct , 序 号 ci Eki (mi ) (mi ki ) mod 26 其中: ( )
20 17 4 2 8 15 22 25 19
相应的密文串将是: VPXZGIAXIVWPUBTTMJPWIZITWZT
21
解密过程与加密过程类似,不同的只是进行模26减,而不是模26加。
当将明、密文空间均设为
Z26 {0,1,2,,25}
将对英文字母的加密变换改为:
此时解密变换与加密变换完全相同,也是:
24
11 8 例 假定密钥是 3 7 现在我们加密明文july
分为两个明文组(9,20)(相应于ju)和(11,24)(相应于ly)。 计算如下:
11 8 (9,20) 3 7 (99 60,72 140) (3,4)
因此,july的加密是DELW。
7
加密运算
1.简单加法密码 c=Ek(m)=(m+k) mod q 其中的加法都是模q加法.显然,简单加法密 码的密钥量为q. 2. 乘法密码 c=Ek(m)=(mk) mod q 其中的乘法都是模q乘法.
8
加密运算
3. 简单仿射密码 c=Ek(m)=(k1+k2m) mod q 其中的加法和乘法都是模q加法和乘法. 4. 简单置换密码 明文的字母保持相同,但顺序被打乱了。
23
定义
ci Eki (mi ) mi ki
这是众所周知的完全保密的密码体制
Hill密码
基本思想:将n个明文字母通过线性变换将它们转换为n 个密文字母,解密时只需做一次逆变换,密钥就是变换 矩阵 例如:明文m (m1 , m2 ), 密文c (c1 , c2 )
c1 11m1 3m2 c2 8m1 7 m2 11 8 (c1 , c2 ) (m1 , m2 ) 3 7
例2.2 密钥句子为:the message was transmitted an hour ago 。
源字母表为: 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
代换字母表为:THEMSAGWRNIDOUBCFJKLPQVXYZ 明文:please confirm receipt 密文:CDSTKS EBUARJO JSESRCL
27
2. 多表代替的优缺点 优点: 只要 (1) 多表设计合理,即每行中元素互不相同,每 列中元素互不相同.(这样的表称为拉丁方表) (2) 密钥序列是随机序列,即具有等概性和 独立性。 这个多表代替就是完全保密的。 等概性:各位置的字符取可能字符的概率相同; 独立性:在其它所有字符都知道时,也判断 不出未知的字符取哪个的概率更大。
解密变换为:
11
m D3 (c) (c 3) mod 26, 0 c 25
例 恺撒(Caesar)密码是k=3的情况。即通过简单的向右移动源字母 表3个字母则形成如下代换字母表
明文 字母
a b
c F
d G
e H
f I
g J
h K
i L
j M
k N
l O
m P
密文 D E 字母:
《现代密码学》课程幻灯片
第二章 古典密码
郑洪英
E-mail:zhenghongy@cqu.edu.cn
重庆大学计算机学院信息技术系
1
上节课内容复习
明文、密文、密钥(概念) 加密、解密(概念及函数的表示方法) 密码体制 加、解密密钥,加、解密函数 破译 攻击方法(穷举攻击中根据密钥量来推算攻击 时间)
19 7 8 18 2 17 2 8 15 7 4 17 21 15 23 25 6 8
24 15 19 14 18 24 2 8 15 7 4 17 0 23 8 21 22 15
18 19 4 12 8 18 2 8 15 7 4 17 21 1 19 19 12 9
13 14 19 18 4 2 2 8 15 7 4 17 15 22 8 25 8 19