密码与隐藏技术

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第2章 密码与隐藏技术
第2章 密码与隐藏技术
2.1 密码技术概述 2.2 古典加密方法 2.3 数据加密标准DES 2.4 高级加密标准AES 2.5 公开密钥体制 2.6 RSA算法 2.7 NTRU公开密钥体制 2.8 对称加密体制与公开密钥体制比较 2.9 信息隐藏技术 2.10 数字水印
计算机工程学院
计算机工程学院
28
为中华之崛起而读书 -28-
第2章 密码与隐藏技术
计算机工程学院
29
为中华之崛起而读书 -29-
第2章 密码与隐藏技术
把复杂的乘法运算转 换为移位和加法运算。
计算机工程学院
30
注意: 系数a3,…,a1,b3,…,b1 是 一个字节8位二进制数, 不是一位二进制数1或 0
为中华之崛起而读书 -30-
AES比DES支持更长的密钥,AES-128密钥个数 比DES的56位密钥个数要多1021倍,对AES的攻击仍 然是穷举密钥攻击。如果用一台每秒钟能够找出255 个DES密钥的机器,用它来找AES-128的密钥,大 约需要149万年。
计算机工程学院
25
为中华之崛起而读书 -25-
第2章 密码与隐藏技术
第2章 密码与隐藏技术
置换相当于重新排队
队列:
pp518 pp520 pp432 …………… 123
pp2632 p6135 pp674 62 63 64
计算机工程学院
16
为中华之崛起而读书 -16-
第2章 密码与隐藏技术
计算机工程ຫໍສະໝຸດ Baidu院
17
为中华之崛起而读书 -17-
第2章 密码与隐藏技术
计算机工程学院
计算机工程学院
32
为中华之崛起而读书 -32-
第2章 密码与隐藏技术
计算机工程学院
33
为中华之崛起而读书 -33-
第2章 密码与隐藏技术
2.4.2 AES算法概述
AES算法是一种可变数据块长Nb和可变密钥长Nk的迭代分 组加密算法,其数据块长和密钥长度可分别为128、192和256 比特。
AES算法以字节(8比特)和字(32比特)为处理单位, 将明文分成Nb个字,密钥分成Nk个字,每个字为4个字节32
计算机工程学院
11
为中华之崛起而读书 -11-
第2章 密码与隐藏技术
DES算法概要: 1.对输入的明文从右向左按顺序每64位分为 一组(不足64位时,在高位补0),并按组进行 加密或解密。 2.进行初始换位。 3.将换位后的明文分成左、右两个部分,每 部分为32位长。 4.进行16轮相同的变换,包括密钥变换。 5.将变换后左右两部分合并在一起。 6.逆初始变换,输出64位密文。
18
为中华之崛起而读书 -18-
第2章 密码与隐藏技术
计算机工程学院
19
为中华之崛起而读书 -19-
第2章 密码与隐藏技术
计算机工程学院
20
为中华之崛起而读书 -20-
第2章 密码与隐藏技术
对应S盒的(3,5)元素为9,将9转换为二进 制数1001。所以,当S盒的输入为101011时,S盒 的输出为1001。
计算机工程学院
12
为中华之崛起而读书 -12-
第2章 密码与隐藏技术
p=p1p2…p64 p’=p58p50…p7 c’=c1c2…c64
c=c40c8…c25
计算机工程学院
13
为中华之崛起而读书 -13-
第2章 密码与隐藏技术
加密变换:将明文p初始置换后得到p’分为两部分(L0,R0),首轮变换后
P = D K2 (E K1( P )) = P
在实际加密和解密时,根据加密算法的特点,K1与
K2的值可以不同,也可以相同。
计算机工程学院
4
为中华之崛起而读书 -4-
第2章 密码与隐藏技术
例:设明文是一串二进制序列,加密和解密算法都采 用模2运算,即异或运算⊕,加密密钥和解密密钥也相 同。
若明文 加密和解密密钥 则加密后的密文 解密后的密文
DES 是分组加密算法,它以64位(二进制)为一 组,对称数据加密,64位明文输入,64位密文输出。密 钥长度为56位,但密钥通常表示为64位,并分为8组,每 组第8位作为奇偶校验位,以确保密钥的正确性,这样对 用户来说每组密钥仍是56位。利用密钥,通过传统的换 位、替换和异或等变换,实现二进制明文的加密与解 密。
比特。 Nb 、Nk可分别取4、6、8,两者不一定相同。
令变换轮数 Nr = max {Nb,Nk} + 6, 则算法共进行一个初始轮(初始化),Nr-1轮变换及最后 一轮变换,即AES算法共进行Nr +1轮变换。
计算机工程学院
34
为中华之崛起而读书 -34-
第2章 密码与隐藏技术
当AES的输入明文分组长度为128位时,经AES加密或解 密处理后,得到的输出也是128位。
2.4 高级加密标准AES
计算机工程学院
26
为中华之崛起而读书 -26-
第2章 密码与隐藏技术
即57⊕83=D4
计算机工程学院
27
为中华之崛起而读书 -27-
第2章 密码与隐藏技术
11B即0001 0001 1011对应多项式x8+x4+x3+x+1
即57 ·83=C1(先相乘,再相除,得到的余数)
但破译DES不是不可能:
(1)1997 年 DESCHALL 小 组 经 过 4 个 月 , 通 过 Internet 搜 索 了 3×1016个密钥,找出了DES密钥,恢复了明文。
(2)1998年美国EFF(electronics frontier foundation) 宣布,他们用一台20万美元的计算机改装的专用解密机,花56 小时破译了56位密钥的DES。
为中华之崛起而读书 -6-
第2章 密码与隐藏技术
2.2 古典加密方法
2.2.1 代替密码
代替密码又称替换密码,就是按照一定要求,将明文中 的每个字符替换成另一个字符,明文中字符的位置保持不变, 但其本身改变了。分为单表代换和多表代换。 (1)单表代换:同一个字符具有一个密文字符。 (2)多表代换:同一个字符具有不同的密文字符。 如: 移位密码:C=P+K(mod 26), M=C-K(mod 26) 仿射变换:C=aP+b(mod 26), M=a-1(C-b)(mod 26),a与26互素
S盒代替是DES算法的核心部分,整个变换过 程是非线性的(而DES算法的其他变换都是线性 的),提供很好的混乱数据效果,比DES算法的 其他步骤都提供了更好的安全性。
9. P盒置换: 将S盒输出的32位二进制数据按P盒置换表2.7 进行置换。
计算机工程学院
21
为中华之崛起而读书 -21-
第2章 密码与隐藏技术
1
为中华之崛起而读书 -1-
第2章 密码与隐藏技术
2.1 密码技术概述
密码技术是防止信息泄露的技术,是信息安全技 术中最重要和最基本的安全技术。
密码技术中常用的一些术语: 1.明文P(Plaintext ):可以理解的信息原文。 2. 加密E(Encryption):用某种方法伪装明文以 隐藏它的内容的过程。 3.密文C(Ciphertext):经过加密后将明文变换 成不容易理解的信息。 4.解密D (Decryption):将密文恢复成明文的 过程。
机序列发生器产生性能优良的随机序列,使用该序列与明文 序列叠加来输出密文序列。解密时,再用同一个随机序列与 密文序列进行叠加来恢复明文,如图2.4所示。教材P19
计算机工程学院
10
为中华之崛起而读书 -10-
第2章 密码与隐藏技术
2.3.1 DES算法
DES(数据加密标准,Data Encryption Algorithm) 算法:IBM提出,美国标准,世界首例标准。
P=11001100
K= 1 1 0 0 0 1 1 1 C=P⊕K= 00001011 P=C⊕K= 11001100
如字符串“HYIT”的ASCII码为48594954H, 密 钥 用 05H , 密 文 为 4D5C4C51H , 对 应 的 ASCII 码 为 “M\LQ”
计算机工程学院
5
为中华之崛起而读书 -5-
以表示为: C = F (P,K )
计算机工程学院
3
为中华之崛起而读书 -3-
第2章 密码与隐藏技术
这个函数具有两个自变量P和K,在函数F的作用下 得到密文。在已知密钥K1、K2、加密算法E和解密算法D 时,则加密和解密过程可以表示如下:
EK1 ( P ) = C
D

K2
C

=
P
显然为使明文加密后能被解密必须有:
计算机工程学院
7
为中华之崛起而读书 -7-
第2章 密码与隐藏技术
多表代换:
密钥由多个字母组成,依次用来对明文进行加密。
2.2.2 换位密码 换位密码也可称为置换密码,它是改变明文
中字母的位置,明文中的字母不变。也就是明文 中的字母保持不变,但顺序被打乱了。例如可以 将明文the变换成het。
计算机工程学院
8
为中华之崛起而读书 -8-
第2章 密码与隐藏技术
2.3 对称加密体制
对称加密算法,有时又叫传统密码算法,它的典型特 点是:
1.采用的解密算法就是加密算法的逆运算,或者解 密算法与加密算法完全相同;
2.加密密钥和解密密钥相同,或者加密密钥能够从 解密密钥中推算出来,反过来也成立。
对称算法要求发送者和接收者在安全通信之前,商定 一个密钥。它的安全性依赖于密钥的保密性。
2000年有了高级加密标准AES-- Rijndael算法。
计算机工程学院
24
为中华之崛起而读书 -24-
第2章 密码与隐藏技术
2.4 高级加密标准AES
Rijndael算法也是一种分组密码体制,其明文分 组长度、密钥长度可以是128比特、192比特、256比 特 中 的 任 意 一 个 。 按 照 密 钥 长 度 , 分 别 记 为 AES128,AES-192,AES-256。
计算机工程学院
2
为中华之崛起而读书 -2-
第2章 密码与隐藏技术
5.算法(algorithm):就是用于加密或解密的方法, 在现代密码学中算法就是一个用于加密和解密的数学函 数。
6.密钥K(key):是用来控制加密和解密算法的实 现。
典型的加密和解密过程可以用图2.1来描述。
如果将加密过程看成是一个数学函数F的话,则密文C可
得到新的64位数据,还分为左右两部分(L1,R1),再用(L1,R1)进行同样 变换,从而先后得到(L2,R2)…… (L16,R16)。 (L16,R16)即为c’。
一轮变换过程图示:
计算机工程学院
14
为中华之崛起而读书 -14-
第2章 密码与隐藏技术
计算机工程学院
15
为中华之崛起而读书 -15-
第2章 密码与隐藏技术
计算机工程学院
31
为中华之崛起而读书 -31-
第2章 密码与隐藏技术
该矩阵是一个循环矩阵,x b(x)=b2x3+b1x2+b0x+b3, 即左循环移了一位(a0=a2=a3=00,a1=01,系数为一个字 节),可见x或x的幂模乘多项式,相当于对字节构成的
向量进行字节循环移位。
计算机工程学院
22
为中华之崛起而读书 -22-
第2章 密码与隐藏技术
可利用课后时间,编程实现DES算法
计算机工程学院
23
为中华之崛起而读书 -23-
第2章 密码与隐藏技术
DES算法的安全性:
(1)安全性比较高,目前只有一种方法可以破解该算法,那 就是穷举法。
(2)采用64位密钥技术,实际只有56位有效,8位用来校验的。 一台PC机器,它能每秒计算一百万次(约220),那么它要穷举的 时间为2285年,所以这种算法还是比较安全的一种算法。
计算机工程学院
9
为中华之崛起而读书 -9-
第2章 密码与隐藏技术
对称算法可分为两类:分组密码和序列密码或 流密码。
1.分组密码是将明文分成固定长度的组或块(如64
比特为一组),然后用同一密钥和算法对每一块进行加密, 输出密文的长度也是固定的,如图2.3所示。教材P19
2.序列密码(stream cipher)的主要原理是通过伪随
第2章 密码与隐藏技术
现代密码学已发展成两个重要的研究分支:
(1)对称加密方法,其典型代表是数据加密 标准DES(数据加密标准)、IDEA(国际数据 加密算法)、AES(高级加密标准)等算法。
(2)公开密钥算法(也称非对称算法),其典 型代表是RSA、椭圆曲线加密、NTRU算法等。
计算机工程学院
6
基本处理单位:在AES中,各种运算是以字节为基本
单位进行处理的。在一个字节中,最右边的位是字节低位, 最左边的位是字节高位。
状态:对明文数据块加密或解密时,要经过多次的数据
变换操作,每一次变换操作都产生一个中间结果,我们将这 个中间结果称为状态(state)。
怎么表示状态?状态可以用二维字节数组表示,它有
相关文档
最新文档