计算机密码学课件
JCVJ XVB BDP WZ FZHRDHEZY WT
JCZ EVXCLBZ CVI HLIZB
YHVEVJLXVSST VI V HZIKSJ DR JCLI
HZXZBJ YZNZSDFEZBJ LB
JZXCBDSDAT EVBT DR JCZ XLFCZH
ITIJZEI JCVJ PZHZ DBXZ CDBILYZHZY
5) 再经逆初始置换IP-1,产生64位密
文。
22
2020/2/6
密钥编排函数KS算法
1) 置换选择1:首先从64位密钥中去 掉8个奇偶校验位,然后打乱重排, 前28位作为C0,后28位作为D0。
2) 循环左移:Ci=LSi( Ci-1), Di=LSi( Di-1), i=1,…16。
3) 置换选择2:从Ci和Di(共56位) 中选择出一个48位的子密钥Ki。
28
2020/2/6
分组密码的工作方式
1. 电子密码本模式(ECB):设明文 M=m1m2…mn , C=c1c2…cn ,其 中ci=E(mi,K),i=1, …,n。 电子密码本模式是分组密码的基本 工作方式。
2. 输出反馈模式(OFB):在OFB模 式中,先产生密钥流,然后将它与 明文进行异或,定义Z0=IV,然后 用Zi= E(Zi-1,K),i≥1计算 Z1Z2…
29
2020/2/6
通过ci=mi+Zi ,i≥1,来加密明文序列 m1m2…。
3·密码分组链接模式(CBC):定义 C0=IV ,Ci=E(Mi+Ci-1,K),i≥1, 使Mi=Mj,但因Ci-1≠Cj-1,故有Ci ≠Cj。 解密时Mi=D(Ci,K)+Ci-1, i≥1。
2020/2/6
21
2020/2/6
DES数据加密标准
1) 初始置换IP
2) 将置换输出的64位数据分成左右两 半,左一半称为L0,右一半称为R0
3) 计算函数的16次迭代。Li=Ri-1, Ri=Li-1⊕f( Ri-1, Ki)。 i=1,…16
4) 最后一次的迭代L16放在右边, R16 放在左边。
14
2020/2/6
多表代替密码
构造d个密文字母表
设A={a0,a1,…,an-1 }为含n个字母 的明文字母表,Bj={bj0,bj1,…, bjn-1 },j=0,1, …,d-1为d个含 n个字母的密文字母表,定义d个映
射。
fj:A→Bj,fj(ai)=bji
设明文M=(m0,m1,…,mn-1),则相
第一轮的输出是4个子块,即11)、 12) 、13) 、14)步的结果;将 中间两个块交换(最后一轮除外)
27
2020/2/6
为下一轮输入。 在经过8轮运算之后,有一个最后
的输出变换(1) X1和第一个密钥 子块相乘; (2)X2和第二个密钥子块相加; (3)X3和第三个密钥子块相加; (4)X4和第四个密钥子块相乘; 最后,这4个子块连接到一起产生密 文。。
9
2020/2/6
字母与数字对应表
abcdef ghi 012345678
j k l mn o p q r 9 10 11 12 13 14 15 16 17 s t u v wx y z 18 19 20 21 22 23 24 25
10
单表代替密码的统计 分析
极高频率字母组:e
z
次高频率字母组:taonirsh jvbhdilc
密钥密码 1977年,美国联邦政府正式颁布DES 1977年—至今,公开的密码学研究爆炸性
的增长
2
密码学的基本概念
2020/2/6
密码学分类:密码编制学和密码分 析学
密码系统的组成: (1)明文{ 空间M; (2)密文空间C; (3)密钥空间K,对任意k∈K,k= (kd,ke); (4)加密算法E,C=E(M,ke); (5)解密算法D,M=D(C,kd)。
f:A→B,f(ai)=bi 设明文M=(m0,m1,…,mn-1),则相应的密
文C=(f(m0),f(m1),…,f(mn-1))
8
2020/2/6
几类单表代替密码
加法密码:f(ai)=aj,j≡i+k(mod n), 0<k<n,取n=26。
乘法密码:f(ai)=aj,j≡ik(mod n), 0<k<n,(k,n)=1。
应的密文C=(f0(m0),f1
(m1),…,fd-1(md-1), fd
15
2020/2/6
Vigenere密码
若K=k1k2…km, M=m1m2…mn, C=c1c2…cn其中ci≡mi+ki(mod 26)
至于密钥k可以通过周期性地延长,周 而复始,反复以至无穷。即ki+lm=ki
例:密钥为cipher,明文为 thiscrytosystem。
IZXKHZ VHZ BDP WHZVMVWSZ
12
2020/2/6
Z:e,v→a, 三字母单词JCZ→??e:the 2字母单词VI→a?:an,as,am,
at,I →s 三字母单词VHZ→a?e:are,age
H→r。 三字母单词JZB→te?: B→n 4字母单词JCLI→th?s: L→I 4字母单词WZZB→?een: W→b 2字母单词WT→B?: T→y 6字母单词HZVIDB→reas?n:
D→o 13
2020/2/6
3字母单词BDP→no?: P→w 4字母单词DBXZ→on?e: X→c 4字母单词EVBT→?any: E→m IFZZXC→s?eech: F→p FZHRDHEZY→performe?:Y→d VSS→a??: S→l JZXCBDSDAT→technono?yA→g 3字母单词结尾LBA→i?g: B→n YKHLBA→d?ring: K→u LEFHDNZY→impro?ed: N→v WHZVMVWSZ→brea?able M→k
仿射密码:f(ai)=aj,j≡ik1+k0(mod n),(k1,n)=1。
密钥词组代替密码—用一词组或短语作密 钥,去掉密钥中的重复字母,把结果作为 矩阵的第一行,其次从明文字母表中补入 其余字母,最后按某一顺序从矩阵中取出 字母构成密文字母表。
例:密钥为red star,明文为data security。
例:明文为cat,密钥为key,于是 M=000100000010011 K=010100010011000 C=010000010001011
2020/2/6
20
Hill加密算法
Hill加密算法的基本思想是将l个明文 字母通过线性变换将它们转换为l个 密文字母。解密只要作一次逆变换 就可以了,密钥就是变换矩阵本身。
计算机密码学
朱文余
2020/2/6
1
2020/2/6
密码学的发展历程
第一次世界大战前,密码学重要的进展很 少出现在公开文献中
1918年,20世纪最有影响的分析文章,重 合指数及其在密码学中的应用问世
1949年,Shanon发表了题为“保密系统的 通信理论”
1949—1967密码学文献很少 1976年,W.Diffie,M.Hellman提出了公开
中等频率字母组:dlucm xseyr
低频率字母组:pfywgbv tfkawnp
甚低频率字母组:jkqxz mqgou
双字母:th he in er an re ed …
三字母:the ing and her are ent…
2020/2/6
11
2020/2/6
举例
YKHLBA JCZ SVIJ JZB LZVHI JCZ VHJ
DR IZXKHLBA VSS RDHEI DR YVJV
LBXSKYLBA YLALJVS IFZZXC CVI
LEFHDNZY EVBTRDSY JCZ FHLEVHT
HZVIDB RDH JCLI CVI WZZB JCZ
VYNZBJ DR ELXHDZSZXJHDBLXI JCZ
XDEFSZQLJT DR JCZ RKBXJLDBI
3
2020/ ke=kd或ke→ kd称为单钥或对称
或传统;
[2] k ≠ k 称为双钥或非对称,进 e d M
Ci
(EM(1,M iM,2k,e),,Mi MMnm)1,(2,,mMMC,(nC。1,C2,
,Cn),
而由ke不能推出kd称为公钥密码体
制。
根据对明文的划分与密钥的使用方 法不同可将密码体制分为分组密码 和序列密码体制。
4
密码分析者攻击密码 的方法主要有以下三 种
穷举攻击 统计分析攻击 数学分析攻击
2020/2/6
5
根据密码分析者可利 用的数据来分类,破 译密码的类型分为三 种
仅知密文攻击
已知明文攻击:计算机程序易受这 种攻击
选择明文攻击:计算机文件系统和 数据库易受这种攻击
2020/2/6
6
置换密码—把明文中 的字母重新排列,字 母本身不变
例:明文为this cryptosystem is not secure。 排成矩阵: thiscr yptosy stemis notsec ure
密文为tysnu hptor itete soms csie rysc。
23
2020/2/6
加密函数f
➢ 选择置换E( Ri-1)=48位 ➢ E( Ri-1) ⊕ Ki ➢ 选择函数组S,1)输出不是输入的
线性和仿射函数;2)改变其中任一 位,输出至少有两位发生变化;3) 保持1位不变,其余5位变化,输出 中的0和1个数接近相等。