02 古典密码及分析
密码学-第2章古典密码
问题:
置换和换位的定义、区别?
作业:
习题2.1、2.2、2.3、2.4、2.6
抽象代数
群:由一个非空集合和一个二元运算组成,并满 足封闭性、结合性、单位元、逆元的代数系统。
乘法群
环:一个集合,可以在其上进行加法和乘法运算 而封闭。
交换环:对于乘法运算可交换
域:非零元都有乘法逆的交换环。
设明文m = (m1, m2, …, mn) ∈Z26n,密文c= (c1, c2, …, cn) ∈ Z26n ,密钥为Z26上的的n×n阶可逆 方阵K = (kij) n×n ,则 c = mK mod 26, m = cK-1 mod 26。
例2.4 设n=2,密钥为 11 8 7 18 -1 K= ,容易计算 K = 3 7 23 11 设明文为Hill, 则相应的明文向量为(7,8)和( 11,11)。于是,相应的密文向量 分别为 11 (7,8) 3 11 ( 11,11) 3 8 77 24, 56 56 )=(23,8), =( 7 8 121 33, 88 77 )=(24, 9 ), =( 7
表2.4称为Vigenere方阵(书P12)。当用密钥字 母ki对明文字母mi进行加密时,Vigenere方阵中 的第ki行第mi列的字母就是相应的密文字母。
例2.2
设明文为 This cryptosystem is not secure, 密钥为cipher, 则密文为:
VPXZGI AXIVWP UBTTMJ PWIZIT WZT。
有限域(伽罗瓦域):GF(2)
第2章 古典密码
主要内容
古典密码中的基本加密运算 几种典型的古典密码体制 古典密码的统计分析
实验二 古典密码
实验2 古典密码1.实验目的(1)了解古典密码中的基本加密运算。
(2)了解几种典型的古典密码体制。
(3)掌握古典密码的统计分析方法。
2.实验内容(1)古典密码体制①简单移位加密(单表代换)该加密方法中,加密时将明文中的每个字母向前推移K位。
经典恺撒密码加密变换就是这种变换,取k=3。
步骤1:打开CAP4软件,并加载实验一附带的“mw.txt”,如图2-1所示。
图2-1加载文件步骤2:采用恺撒加密方法手工加密“mw.txt”;打开CAP4菜单栏“Cipher”菜单项选择“simple shift”选项,并选择移位值“shift value”为3,加密步骤1中加载的文件,如图2-2所示。
图2-2 参数设置图2-3加密文件步骤3:比较二者的加密结果是否相同。
步骤4:点击CAP4软件中的“Simple analysis”下的“shift”键,观察恺撒加密法的可能密钥值,并分析其攻击的难度,如图2-4所示。
图2-4密钥分析②仿射密码加密(单表代换)在仿射密码加密(affine cipher)中,字母表中的字母被赋予一个数字,例如,a=0,b=1,c=2,…,z=25.仿射密码加密法的密钥为0~25之间的数字对(a,b)。
a与26的最大公约数必须为1,这就是说能整除a和26的数只有1.现在假设m为明文字母的数字,而c为密文字母的数字,那么,这两个数字之间有如下关系: c=(am+b)(mod 26)m=a-1(c-b)(mod 26)其中,(mod 26)的操作是:除以26,得其余数。
例如,选取密钥为(7,3)。
因为7与26互素,也就是只有公约数1,所以(7,3)可以作为仿射密码的加密钥。
将“hot”转换成数字7、14、19,利用仿射等式生成: c(H)=(7×7+3) mod 26=52 mod 26=0,即为字母“a“。
c(O)=(7×14+3) mod 26=101 mod 26=23,即为字母“x“.c(T)=(7×19+3) mod 26=136 mod 26=6,即为字母”g”. 这样,对于这个密钥,”hot”变成了“axg“.CAP4软件中实现仿射密码加密:步骤1:在CAP4软件中加载要加密地的明文“mw.txt“.步骤2:选取Cipher菜单下的Affine Cipher菜单项,弹出如下对话框,如图2-5所示。
2 古典密码
• 实用加密体制需满足:
1.Εk,Dk易于计算
2.对任何敌手,即使获得密文y,不可能由此确
定k和x。
• 已知y,试图得到k的过程,称为密码分析。 • 要求:通过y计算k至少与通过y计算x同样困难。
移位密码不安全,可用穷尽密钥搜索破译 例: 密文 V H F X U LW B v h f x ul wb u g e w tk va
Jiangsu University
2 古典密码
古典密码体制
古典密码有两个基本工作原理:
代换(substitution) 置换(permutation)
这两个基本工作原理在仍然是现代对称加密算法的最重要 的核心技术
现代对称密码DES和AES中就有这两个工作原理的应用
11/10/15 10:57
• 已知m,确定K=(k1,k2,…km)
---- f0,f1,…,f25为A,B,…,Z在yi中出现的频数,n’=n/m为yi长度 26个字母在yi中的概率分布为: f0/n’,f1/n’,…,f25/n’ ---- yi中是由明文子集中字母移ki位所得,故移位后概率分布 fki/n’,f1+ki/n’,…,f25+ki/n’ 应近似等于p0,p1,…,p25 ---- 定义Mg=∑(pifi+g)/n’, g=0,1,…25
如果g=ki,
Mg ≈ ∑pi2=0.065
如果g≠ki, Mg 一般应该<0.065 对每个i,由此确定ki
换位密码
换位密码,也成为置换密码,通过重新排列消息中元素的位 置而不改变元素本身来变换一个消息,这种思想广泛应用于 现代分组密码的构造。
密钥为置换: 加密算法为: 显然有: 解密算法为:
chap2-古典密码
密钥 密文
密钥
明文
加密算法
明文 解密算法
加密密钥(Encryption Key) 解密密钥(Decryption Key)
基本概念
需要密钥的加密算法,记为:C=E(K,P),即密文消息同时
依赖于初始明文和密钥的值。实际上,E是一组加密算法, 而密钥则用于选择其中特定的一个算法。
加密与解密的密钥相同,即:P=D(K,E(K,P)) 加密与解密的密钥不同,则:P=D(K ,E(K ,P))
除了一次一密的方案外,没有无条件安全的算法 安全性体现在任意一条:
• 破译的成本超过加密信息的价值 • 破译的时间超过该信息有用的生命周期
密钥搜索所需平均时间
目录
1.
2. 3.
密码学的起源、发展和现状
密码学基本概念 典型几种古典密码技术
经典加密技术
替代 置换 隐写术
古典密码:替代(代替)
2018/6/26
41/72
古典密码:置换
改变明文内容元素的相对位置,保持内容的表现形式不 变 通常称为transposition或者permutation密码 通过重新安排消息字母的位置来隐藏明文信息,而不是 用其他字母来代换明文字母 这种方法是很容易破译的,因为密文拥有与明文一样的 字母频率统计特性
(4)任意k∈ K,有一个加密算法 ek E 和相应的解密 算法 d k D ,使得 ek : P C 和 dk : C P 分别为加 密解密函数, 满足dk(ek(x))=x ,这里 x ∈P。
密码编码系统分类
保密内容 密钥数量 明文处理的方式
保密内容
受限制的(restricted)算法
密码技术专题(二)——古典密码体制
密码技术专题(二)—古典密码体制∙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映射。
第1章02--古典密码
11
例1: 汉字和符号的区位码(单表代替) 2211
2277
12
例2 以十进值数为代替单位的代替函数
S : {0,1,2,,9} {0,1,2,,9}
假设S[10] {5, 4,8, 2,1, 0,9,7,3,6}
即代替表为:
明文 0 1 2 3 4 5 6 7 8 9 密文 5 4 8 2 1 0 9 7 3 6
则明文晨五点总攻 先变换为区位码 1931 4669 2167 5560 1505 再被加密成密文 4624 1996 8497 0095 4050 单表代替的缺点:明文字符相同,则密文字符也相同
13
例3 加法密码 选定常数 q 和 k. 明文空间=密文空间= Zq {0,1,2,, q 1}
18
y=24, 7*24+21(mod26)=7,
yh
例6:仿射密码
加密变换: 脱密变换:
c (am b) mod26
m a (c b) mod26
1
0 m, c 25
a-1是a的乘法逆元 a-1*a(mod26)=1
如:设(a,b)=(7,21),对vlxijh脱密。 7-1mod26=? 7*15mod26=1 7-1mod26=15
比较
计算散列值
随机选取M2
5
密码学的目标(2)
在敌人可能会对消息进行伪造的前 提下,采取额外的步骤以便接收者 能够对消息的完整性进行验证。
保密性 完整性 认证 不可否认
指身份特征或者消息实体的代表的属性。 认证算法:消息认证码(MAC)
需要秘密密钥来阻止任何人对标记进行伪造
具有同意负责任的属性。 不可否认和认证的性质十分相似,从 实现角度上讲,它们大都使用了相同 的基本原理。 当使用者具备签名能力时,他的公钥 签名才能称为不可否认性“设备”。
2 古典密码分析
•代替密码
简单代替密码(simple substitution cipher),又称单 字母密码(monoalphabetic cipher):明文的一个字符用 相应的一个密文字符代替。
多字母密码(ployalphabetic cipher):明文中的字符 映射到密文空间的字符还依赖于它在上下文中的位置。
可能尝试的密钥只有11个
仿射密码算法-i
• 加密函数取形式为
e(x)=ax+b (mod 26), a,b∈Z/(26)
要求唯一解的充要条件是 gcd( a,26)=1 该算法描述为: 设 P=C=Z/(26)
K={(a,b) ∈Z/(26)×Z/(26)|gcd(a,26)=1}, 对 k=(a,b) ∈K, 定义
(4)若a≡b mod q且b≡c mod q ,则a≡c mod q
模q算术-ii
• 模算术(Modular Arithmatic)
在mod q的q个剩余类集{0,1,2,…,q-1}上可以定 义加法和乘法运算如下: 加法: (a mod q)+ (b mod q)= (a+b) mod q 乘法:(a mod q) × (b mod q) = (a ×b)mod q
代替密码(substitution cipher):就是明文中的每一个字 符被替换成密文中的另一个字符。接收者对密文做反向替 换就可以恢复出明文。 置换密码(permutation cipher),又称换位密码 (transposition cipher):明文的字母保持相同,但顺序被 打乱了。
经典密码体制 代替密码 单字母密码 单表代换密码 多表代换密码 多字母密码 置换密码
1.4 古典密码
数学与系统科学学院
《古典密码学》课件
03
古典密码学的加密 方式
替换式密码
原理:将明文中的每个字符 替换为其他字符
例子:凯撒密码,每个字符 向后移动3位
优点:简单易用,易于实现
缺点:安全性较低,容易破 解
错位式密码
原理:通过改变字母的 位置来加密信息
应用:广泛应用于古代 军事、外交等领域
政治机密保护
古代战争:传递军事情报,保护军事机密 外交谈判:保护外交机密,防止泄露 皇室宫廷:保护皇室机密,防止篡位夺权 商业贸易:保护商业机密,防止竞争对手窃取商业信息
商业秘密保护
商业合同:保护商业合同中的机密信息 商业谈判:保护商业谈判中的机密信息 商业计划:保护商业计划中的机密信息 商业策略:保护商业策略中的机密信息
文艺复兴时期的密码学
起源:文艺复 兴时期,密码 学开始兴起
代表人物:莱 昂纳多·达·芬奇、 伽利略等
密码类型:替 换密码、移位 密码等
应用领域:军 事、外交、商 业等
古典密码学的概念
古典密码学的主要目的是 保护信息的机密性
古典密码学是研究如何将 明文转换为密文的学科
古典密码学的主要方法包 括替换密码和置换密码
古典密码学与现代密码学的关系
古典密码学: 基于数学和 逻辑的加密 方法,如凯 撒密码、维 吉尼亚密码 等
现代密码学: 基于计算机 和通信技术 的加密方法, 如RSA、 AES等
关系:古典 密码学是现 代密码学的 基础,现代 密码学在古 典密码学的 基础上进行 了改进和创 新
局限性:古 典密码学在 安全性和效 率上存在局 限性,容易 被破解
步骤:收集足够多的密文 样本,统计字符频率,找
出最可能的字符
1.古典密码(2)
如果已经在26个英文字母和之间建立了一一对应的关系,则每一个密 钥都相当于一个长度为m的字母串,被称为密钥字。
密码学基础
Mod 26
密码学基础 6 置换密码(输入与输出呈线性关系:y=Ax)
dkey ( y) ( y 7) mod 26
密码学基础 3 仿射密码
仿射密码是移位密码的一个推广,其加密过程中不仅包 含移位操作,而且使用了乘法运算。
定义1.2.5 仿射密码的密码体制
令 M C Z26 密钥空间为 K {(k1 , k2 ) Z26 Z26 : gcd(k1 ,26) 1} 对任意密钥 key (k1 , k2 ) K 定义:ekey ( x) (k1 x k2 )mod26
密码学基础
3
7
1 2
11 8 3 7
Mod 26=
17 22
密文为:
A
1
=
A A
1
*
Mod 26=
7 -8 -3 11
Mod26 = 1 2
17 22
xM
y C
dkey ( y) k11 ( y k2 )mod26
密码学基础 明文字符对应的整数为 仿射密码的密钥为
ekey ( x) (k1 x k2 )mod 26
y (11 13 3) mod 26 16
密文为:
111 mod 26 19
dkey ( y) k11 ( y k2 )mod26
定义1.2.7 Hill密码体制 令 m 2是一个正整数, C (Z26 )m K是定义在 Z 上的所有大小为 M 26 的可逆矩阵的集合。对任意的 A K ,定义:
第2讲 古典密码学
韦 宝 典 副教授
weibd@
中山大学电子系
第二讲 古典密码学
概念和意义 内容及分类 单表代换密码 多表代换密码 置换密码
概念和意义
古典密码学(Classical Cipher)
计算机出现以前已得到应用, 计算机出现以前已得到应用,已发明的密码学理论 已得到应用 主要是指20世纪40年代之前的密码编码和密码分析技术 主要是指20世纪40年代之前的密码编码和密码分析技术 世纪40年代之前的密码编码 特别是1935年到1940年期间, 特别是1935年到1940年期间, 1935年到1940年期间 一些通过机械的,初级的电子设备自动实现加密和解密的设备 一些通过机械的,初级的电子设备自动实现加密和解密的设备 机械的 电子设备 工作速度很慢, 工作速度很慢,非常笨重 加解密过程基本是用机械和电子方法实现的, 加解密过程基本是用机械和电子方法实现的, 不是通过软件实现的. 不是通过软件实现的.
起源于俄罗斯的一次乱数本,差不多只有手掌那么大小,数字的排列具有俄国特色. 起源于俄罗斯的一次乱数本,差不多只有手掌那么大小,数字的排列具有俄国特色.
密码板, 年由Crypto AG. Zug(瑞士 制造,用于独立式或网络计算机,提供访 瑞士)制造 密码板,1996年由 年由 瑞士 制造,用于独立式或网络计算机, 问保护,信息保密,信息完整性和病毒保护功能. 问保护,信息保密,信息完整性和病毒保护功能.这个高度可靠的硬件具有很长的 平均无故障时间,可以在断电时存储. 平均无故障时间,可以在断电时存储.
CRAY-1 S (1979)超级计算机以著名的 超级计算机以著名的CRAY-1为原始模型.由Seymaour Gray(1928-1996)设计,1976年开始使用, 为原始模型. 设计, 年开始使用, 超级计算机以著名的 为原始模型 设计 年开始使用 当时市价为8百万美元.超级计算机包含大量的集成电路,使并行处理能力提高,但需要非常尖端的技术. 当时市价为 百万美元.超级计算机包含大量的集成电路,使并行处理能力提高,但需要非常尖端的技术.CRAY 百万美元 -1的处理速度极快,因此,需要冷却设备.首次用于密码分析任务是1979年之后的民用型,不可避免地还有些限制. 的处理速度极快,因此,需要冷却设备.首次用于密码分析任务是 年之后的民用型, 的处理速度极快 年之后的民用型 不可避免地还有些限制. CRAY系统产品有 系统产品有CRAY-2,CRAY X-MP,CRAY Y-MP,CRAY C90,CRAY J90.CRAY J90导致 导致CRAY T90的 系统产品有 , , , , . 导致 的 产生,其配置 个处理器组成. 中公开, 产生,其配置T932由32个处理器组成.大量的并行线路在 由 个处理器组成 大量的并行线路在CRAY T3D中公开,最先进的 中公开 最先进的CRAY T3E(1996年7月)是液 年 月 是液 冷的, 个处理器, 芯片, 百万次运算, 冷的,有2048个处理器,使用 个处理器 使用DEC的Alpha EV-5(21164)芯片,每个处理器速度达到 百万次运算,最高达 ×1012 的 芯片 每个处理器速度达到600百万次运算 最高达1.2× 年生产的T3E达2.4 ×1012次(teraflops)). 次(teraflops)(1998年生产的 年生产的 达 .
现代密码学02 - 古典密码
映射关系
24
频率分析:简单代换密码的终结者 字母出现频率差别很大 频率分布极不均匀
25
频率分析:简单代换密码的终结者
字母 出现频率 字母 出现频率
a
0.082
n
0.067
b
0.015
o
0.075
c
0.028
在这种大环境下,阿拉伯世界 成为东西方文明交流的中转站,其 成就对欧洲乃至全世界都产生了巨 大影响。
Abbasid Caliphate (850)
20
频率分析:简单代换密码的终结者
频率分析 最早记录于9世纪阿尔.金迪的
革命性著作《关于破译加密信息的手稿》。 这项伟大成就是语言学、统计学和宗教信
仰之间的卓越联合,它在密码学历史上掀起 一场革命。
使用不同的代换表进行加解密。
注意:在维吉尼亚密码中,代换表不再是密钥了。
44
维吉尼亚密码
维吉尼亚密码的代换表 如右图
每行都由前一行向左移一位得到。 实际就是26个移位密码的代换表。 具体使用哪一行代换表,是基于 密钥进行的,在代换过程中会不断 变换。
45
维吉尼亚密码
明文:ATTACKATDAWN 密钥:LEMON (m=5) •加密
Julius Caesar (100 BC – 44 BC)
a b c d e . . . wx y z DE F GH . . . ZABC
没有密钥,不安全
13
移位密码
工作原理 • 加密 : 把明文中每个字母代换为字母表中其后的第k个字母
• 解密 : 与加密相反,把密文中每个字母代换为字母表中其前的第k个字母
密码学——加密演算法 第2章 古典密码
Rotor3 :
n1
BDFHJLCPRTXVZNYEIWGAKMUSQO
此时的置换作用为: s on11 om1 ol1 or ol om on1 os
因此: A D
然而Rotor2、Rotor1皆不滚动
在Rotor2上
在Rotor1上 在反射器上
DK
KN NK
回到Rotor1上 回到Rotor2上
m 'affine ' (0,5,5,8,13, 4) E(.)(8, 23, 23, 6, 21, 20) 'IXXGVU ' c
解密: D(c) 31(c 8) 9(c 8) (mod 26)
c 'IXXGVU' (8, 23, 23, 6, 21, 20) D(.)(0,5,5,8,13, 4) 'affine ' m
此时的置换作用为:
s
o
n
1 2
o m1
ol1
or
ol
om
on2
os
经由接线板因无接线,A保持不变
在Rotor3上 在Rotor2上 在Rotor1上 在反射器上
AF FI IV VW
回到Rotor1上 回到Rotor2上 回到Rotor3上
WN NT TH
破译Enigma和对称群
明文: m=“monoalphabeticsubstitutioncipher” 密文:
c=“HJIJKGLAKEOQBYPSEPQBQSQBJ母 a b c d e f g h i j k l m
百分比 字母
8.2
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仍无效。
古典密码-2
一、古典密码 一、古典密码
举例: 举例:
密钥: 密钥: HONG YE 矩阵: HONGYE 选出顺序:按列 矩阵: 选出顺序: ABCDFI JKLMPQ 改变密钥、矩阵大小 改变密钥、 RSTUVW 和取出序列,得到不同的 和取出序列, XZ 密文字母表。 密文字母表。 密文字母表 : B={ HAJRXOBKSZNCLTGDMUYFPVEIQW }
密 码 学
古典密码 古典密码
一、古典密码 古典密码
虽然用近代密码学的观点来看, 虽然用近代密码学的观点来看,许多 古典密码是很不安全的, 古典密码是很不安全的,或者说是极易 破译的。 破译的。但是我们不能忘记古典密码在 历史上发挥的巨大作用。 历史上发挥的巨大作用。 另外, 另外,编制古典密码的基本方法对于 编制近代密码仍然有效。 编制近代密码仍然有效。
二、古典密码的穷举分析
1、单表代替密码分析 ②乘法密码 –因为f(ai )= bi=aj 因为f(a j=ik mod n,且(k,n)=1。 n, k,n)=1。 –所以k共有φ(n)种可能,密钥空间更小。 所以k 所以 )种可能,密钥空间更小。 –对于英文字母表,n=26, 对于英文字母表,n=26, k=1,3,5,7,9,11,15,17,19,21,23,25 取掉1,共11种,比加法密码更弱。 取掉1 11种 比加法密码更弱。 –经不起穷举攻击。 经不起穷举攻击。
二、古典密码的穷举分析
1、单表代替密码分析 ①加法密码 –因为f(ai )= bi=aj 因为f(a j=i+k mod n
–所以k=1,2,... ,n-1,共n-1种可能,密钥空 所以k=1,2, ,n-1,共 种可能, 所以k=1,2
间太小。以英文为例,只有25种密钥。 间太小。以英文为例,只有25种密钥。 25种密钥 –经不起穷举攻击。 经不起穷举攻击。
Lecture02-古典密码
=(9,8,8,24)
=(JIIY)
解密:
K 1 23 20 5 1 2 11 18 1 2 20 6 25 25 2 22 25
P CK 1
23 20 5 1 2 11 18 1 mod 26 (9 8 8 24 ) 2 20 6 25 25 2 22 25
• “China”经仿射加密变换成“RAHQD”
解密:
17 19 236 2 C 0 19 19 7 H 15 7 19 86 mod 26 8 I 16 19 221 13 N 3 19 26 0 A
使用密钥的单表代替加密
• 设密钥为:spectacular。 • 明文:
ABCDEFGHIJKLMNOPQRSTUVWXYZ
• 对应的密文:spectaulrbdfghijkmnoqvwxyz • 如果明文为“China”,则对应的密文为: • elrhs
仿射加密
• 加密:
y f ( x) k1 x k 2 (mod 26)
• 原始消息“China”得到恢复
单表代替密码的特点:
• 密钥量很小,不能抵抗穷尽搜索攻击 • 没有将明文字母出现的概率掩藏起来,很容易 受到频率分析的攻击
频率分析攻击
图3-3 一个长的英文文本中各字母出现的相对频率
常见的双字母组合:TH、HE、IN、ER、RE、AN、ON、EN、 AT; 常见的三字母组合:THE、ING、AND、HER、ERE、ENT、 THA、NTH、WAS、ETH、FOR、DTH等。
02古典和对称密码
• 因此,大家都知道Bob的公钥z,而只有Bob自己
知道他的私钥k。
• 因此,大家都能够用Bob的公钥z将明文消息加密
变为密文,并把密文向Bob发送,而只有Bob自己 能够解密这些密文。
• 因此,公钥密码体制除了具有信息保密的功能以
外,还具有了一种信息认证功能:Alice用Bob的 公钥z加密一个消息,谁能把消息正确解密, Alice就认为谁是真正的Bob。
古典密码
多表代换密码
多表代换密码是字母表Zq={0, 1, …, q-1}到 自身的d个可逆映射f0,f1,... ,fd-1,在加 密时循环排列使用。 令明文m=m0m1...,则相应密文为
c=c0c1...=f0(m0)f1(m1)...fd-1(md-1)f0(md) f1(md+1)...
2.2密码体制的分类
加解密算法的专业术语为”密码体制”。从 原理上,密码体制可以分为两大类: (1)单钥密码体制。(又称为对称密码体制) (2)双钥密码体制。(又称为非对称密码体 制,也称为公钥密码体制)
2.2密码体制的分类
单钥密码体制
单钥密码体制的加密密钥z和解密密钥k能够简单地 相互推导出来。 换句话说: Alice知道加密密钥z,她当然也就知道解密密钥k; Bob知道解密密钥k,他当然也就知道加密密钥z 。 再换句话说, Alice和Bob的地位是对称的,可以双 向地发送和接收保密信息。 (其实在一般实用情形之下,总有z=k )
信息安全
第二讲 数据加密技术
第2章 数 据 加 密
2.1 2.2 2.3 2.4 基本概念 密码体制的分类 古典密码 对称密码体制
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。 单用换位法和替代法构成的密码都比较简单, 一般都经不起攻击。 但以后我们可以看到, 若把它们结合起来使用,可以得到非常有效的密码系统。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
已知明文攻击,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年以前的密码技术可以说是一种艺术,而不是一种科 学,那时的密码专家是凭直觉和信念来进行密码设计和分 析的,而不是靠推理证明。
标志:1949年Shannon发表的《保密系统的信息理论》一文, 标志着密码术到密码学的转变。 标志:1976年Diffie和Hellman发表了《密码学新方向》一 文,提出了一种崭新的密码设计思想,导致了密码学的一 场革命。
26! = 4 1026
2 1026 µ s = 6.4 1012 years
西安电子科技大学计算机学院
6.4 106 years
9
两个概念
绝对安全,unconditional security 计算安全,computational security
西安电子科技大学计算机学院
古典代替密码
将明文字母替换成其他字母、数字或符号的
方法;
如果把明文看成是0或1的序列,那么密文就
是0或1比特序列的另一种表达。
西安电子科技大学计算机学院
22
恺撒密码
Caesar Cipher
所知道的最早的代替密码 Julius Caesar 首先用在军事通信中 用字母后的第三个字母代替
明文P = p1p2…pn
(加密)运算:Ci = pi + k (mod 26), i = 1,2,…,n
解码得密文:C = c1c2…cn
西安电子科技大学计算机学院
24
恺撒密码-加密
方式二:查表(例k=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
32 56
128
2128 = 3.4 1038
2127 µ s = 5.4 1024 years
5.4 1018 years
168
2168 = 3.7 1050
2167 µ s = 5.9 1036 years
5.9 1030 years
26 characters (permutation)
惟密文攻击,ciphertext only
only know algorithm & ciphertext, is statistical, know or can identify plaintext know/suspect plaintext & ciphertext select plaintext and obtain ciphertext select ciphertext and obtain plaintext select plaintext or ciphertext to en/decrypt
密码是通信双方按约定的法则, 进行信息特殊变换的一种重要保密手段
西安电子科技大学计算机学院
3
密码学
密码学是研究编制密码和破译密码的学科
密码编码学 密码分析学
西安电子科技大学计算机学院
4
密码编码学
Cryptography
研究内容
主要研究对信息进行编码,实现对信息的隐蔽。
特征
运算类型:代换与置换 所用的密钥数:单钥与双钥
第2阶段:从1949年到1976年
第3阶段:1976年至今
西安电子科技大学计算机学院
11
密码算法分类
按照保密内容
受限制的(restricted)算法:算法的保密性基于保持算法的 秘密;
基于密钥的(key-based)算法:算法的保密性基于对密钥 的保密 对称密码算法(传统密码算法或单钥密码算法) 非对称算法(公开钥密码算法或双钥密码算法) 分组密码 流密码
西安电子科技大学计算机学院
26
恺撒密码-解密
方式二:查表(例k=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
明 文
x
y
z
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
ห้องสมุดไป่ตู้
q
r
s
t
u v w
西安电子科技大学计算机学院
27
恺撒密码的密码分析
共有密钥25个 可简单地依次去测试 ,强力搜索,穷举攻击 基于字母频率的破译方法 所破译的明文需要识别
• The cost of breaking the cipher exceeds the
value of the encrypted information. • The time required to break the cipher exceeds the useful lifetime of the information.
33
Playfair密钥矩阵
5X5 填写密钥单词 用其他字母填写剩下的空缺 I=J
M O N A R
C
E
H
F
Y
G
B
I/J
D
K
L U
P V
Q W
S X
T Z
西安电子科技大学计算机学院
34
M
O H
N Y
A B
R D
Playfair密码的加/解密步骤
C
E
L U
F
P V
G
Q W
I/J
31
英语字母使用频率
西安电子科技大学计算机学院
32
Playfair密码
单表代替密码由于密钥空间较小所以无法提 供安全性;
Playfair密码是一个多字母代替密码 ;
Charles Wheatstone 于1854年发明, 用其朋友 Baron Playfair 命名。
西安电子科技大学计算机学院
29
单表代替密码分析
密钥空间: 26! > 4 x 1026
貌似安全,实则不然
语言特性
西安电子科技大学计算机学院
30
语言的冗余与密码分析
人类的语言是有冗余的 字母的使用频率是不同的 在英语中E使用的频率最高 有些字母使用较少 单字母、双字母、三字母组合统计
西安电子科技大学计算机学院
密 文
D E F G H I
J K L M N O P Q R S T U V W X Y Z A B C
西安电子科技大学计算机学院
25
恺撒密码 - 解密
方式一:公式计算
密文C = c1c2…cn
(加密)运算:pi = ci - k (mod 26), i= 1,2,…,n
解码得明文: P = p1p2…pn
Number of Alternative Keys 232 = 4.3 109 256 = 7.2 1016 Time required at 1 decryption/µs 231 µ s = 35.8 minutes 255 µ s = 1142 years Time required at 106 decryptions/µs 2.15 milliseconds 10.01 hours
S X
K
T Z
加密
明文分组(填充):2个字母/组 同行字母对加密:循环向右,ei→FK 同列字母对加密:循环向下,cu→EM, xi→AS 其它字母对加密:矩形对角线字母,且按行排 序,ya→BN,es→IL(或JL)
解密
加密的逆向操作
西安电子科技大学计算机学院