40
第第第 第第第第第第 1 第第第 DES DES-Data Encryption Standard (1977 年年年 15 年 - 年年年年年年1998 年!! Simplified DES 年年 年年 S-DES 年年1. * 年年年年年年年年年年(1) 年年年年 IP(initial permutation) (2) 年年年年 f k1 年年年年年 K 年年年 年年年年年 年年年年年(3) 年年年年 SW (4) 年年年年 f k2 (5) 年年年年 IP 年年年年 IP -1

第三章 现代加密方法

Embed Size (px)

DESCRIPTION

第三章 现代加密方法. - PowerPoint PPT Presentation

Citation preview

Page 1: 第三章 现代加密方法

第三章 现代加密方法

• 1 简化的 DES DES-Data Encryption Standard(1977 年元月 15 日 - 美国联邦标准) 1998 年!!Simplified DES 方案,简称 S-DES 方案。注: 1.* 加密算法涉及五个函数:(1) 初始置换 IP(initial permutation)(2) 复合函数 fk1 ,它是由密钥 K 确定的,具有转换和 替换的运算。 (3)转换函数 SW(4) 复合函数 fk2

(5) 初始置换 IP 的逆置换 IP-1

Page 2: 第三章 现代加密方法

加密10bit 密

钥 解密

8bit 明文 P10 8bit 明文

IP 移位 IP-1

P8fk fk

SW SW移位

P8fk fk

IPIP-1

8bit 密文 8bit 密文

K2 K2

K1K1

S-D

ES

方案示意图

Page 3: 第三章 现代加密方法

• 2*. 加密算法的数学表示:IP-1*fk2*SW*fk1*IP也可写为密文 =IP-1 ( fk2(SW(fk1(IP( 明文 )))))其中 K1=P8( 移位 (P10( 密钥 K)))K2=P8( 移位 ( 移位 (P10( 密钥 K))))解密算法的数学表示:明文 =IP-1 ( fk1(SW(fk2(IP( 密文 )))))

Page 4: 第三章 现代加密方法

对 S-DES 的深入描述• ( 1 ) S-DES 的密钥生成:

设 10bit 的密钥为( k1,k2,k3,k4,k5,k6,k7, k8,k9,k10)置换 P10 是这样定义的P10(k1,k2,…,k10)=(k3,k5,k2,k7,k4,k10,k1,k9,k8,k6)相当于P10=

LS-1 为循环左移,在这里实现左移 2 位 P8=

按照上述条件 , 若 K 选为 (1010000010), 产生的两个子密钥分别为 K1=(1 0 1 0 0 1 0 0),K2=(0 1 0 0 0 0 1 1)

68911047253

10987654321

910584736

87654321

Page 5: 第三章 现代加密方法

S-DES 的密钥生成10-bit 密钥P10

LS-1 LS-1

LS-2 LS-2

P8

P8

K1

8

K2

5 5

55

8

Page 6: 第三章 现代加密方法

(2) S-DES 的加密运算 :

初始置换用 IP 函数 :

IP= 1 2 3 4 5 6 7 8

2 6 3 1 4 8 5 7 末端算法的置换为 IP 的逆置换 :IP-1= 1 2 3 4 5 6 7 8

4 1 3 5 7 2 8 6

易见 IP-1(IP(X))=X

Page 7: 第三章 现代加密方法

S-DES 加密图8-bit 明文

IP

E/P

+

S0 S1

P4

+

L R

4

K1

844

fk

F

4

Page 8: 第三章 现代加密方法

S-DES 加密图 ( 续 )

E/P

+

S0 S1

8K2

P4

+

IP-1

8-bit 密文

4

8

44fk

F4 4

2 2

8

SW

Page 9: 第三章 现代加密方法

函数 fk ,是加密方案中的最重要部分,它可表示为:fk(L,R)=(LF(R,SK),R)其中 L , R 为 8 位输入 , 左右各为 4 位 , F 为从 4 位集到 4 位集的一个映射 , 并不要求是 1-1 的。 SK 为子密钥。对映射 F 来说:首先输入是一个 4- 位数( n1,n2,n3,n4 ),第一步运算是扩张 / 置换( E/P )运算: E/P

4 1 2 3 2 3 4 1

事实上,它的直观表现形式为:n4 n1 n2 n3

n2 n3 n4 n1

Page 10: 第三章 现代加密方法

8-bit 子密钥: K1=(k11,k12,k13,k14,k15,k16,k17,k18), 然后与E/P 的结果作异或运算得:

n4+k11 n1+k12 n2+k13 n3+k14

n2+k15 n3+k16 n4+k17 n1+k18

把它们重记为 8 位: P0,0 P0,1 P0,2 P0,3

P1,0 P1,1 P1,2 P1,3

上述第一行输入进 S- 盒 S0 ,产生 2- 位的输出;第二行的 4 位输入进 S 盒 S1 ,产生 2- 位的输出。两个S 盒按如下定义:

2313

3120

0123

2301

3

2

1

03210

0S

3012

0103

3102

3210

3

2

1

03210

1S

Page 11: 第三章 现代加密方法

S 盒按下述规则运算:将第 1 和第 4 的输入比特做为 2- bit 数,指示为 S盒的一个行;将第 2 和第 3 的输入比特做为 S 盒的一个列。如此确定为 S 盒矩阵的( i,j )数。例如:( P0,0, P0,3 ) =(00), 并且 (P0,1,P0,2)=(1 0)

确定了 S0 中的第 0 行 2 列( 0 , 2 )的系数为 3 ,记为( 1 1 )输出。由 S0, S1 输 出 4-bit 经 置 换 P4

2 4 3 1

它的输出就是 F 函数的输出。

Page 12: 第三章 现代加密方法

2 DES 的描述• DES 利用 56 比特串长度的密钥 K 来加密长度为 64 位的明文,得到

长度为 64 位的密文• 该算法分三个阶段实现:

1. 给定明文 X ,通过一个固定的初始置换 IP 来排列 X 中的位,得到 X0 。X0=IP ( X ) =L0R0

其中 L0 由 X0 前 32 位组成, R0 由 X0 的后 32 位组成。2. 计算函数 F 的 16 次迭代 , 根据下述规则来计算 LiRi(1<=i<=16 ) Li=Ri-1, Ri=Li-1 F(Ri-1, Ki)其中 Ki 是长为 48 位的子密钥。子密钥 K1 , K2 ,…, K16 是作为密钥 K ( 56 位)的函数而计算出的。 3. 对比特串 R16L16 使用逆置换 IP-1 得到密文 Y 。Y=IP-1 ( R16L16 )

Page 13: 第三章 现代加密方法

一轮加密的简图

Li-1 Ri-1

F

+

Li Ri

Ki

Page 14: 第三章 现代加密方法

• 对 F 函数的说明:(类比于 S-DES ) F ( Ri-1, Ki )函数 F 以长度为 32 的比特串 A=R ( 32bits )作第一个输入,以长度为 48 的比特串变元 J=K(48bits) 作为第二个输入。产生的输出为长度为 32 的位串。(1) 对第一个变元 A ,由给定的扩展函数 E ,将其扩展成 48 位串, E ( A )(2) 计算 E ( A ) +J ,并把结果写成连续的 8 个 6 位串 , B=b1b2b3b4b5b6b7b8

(3) 使用 8 个 S 盒,每个 Sj 是一个固定的 416 矩阵,它的元素取 0~15 的整数。给定长度为 6 个比特串,如Bj=b1b2b3b4b5b6

计算 Sj(Bj) 如下: b1b6 两个比特确定了 Sj 的行数 , r(0<=r<=3); 而 b2b3b4b5 四个比特确定了 Sj 的列数 c ( 0<=c<=15 )。最后 Sj

(Bj) 的值为 S- 盒矩阵 Sj 中 r 行 c 列的元素( r,c ) , 得 Cj=Sj(Bj) 。

(4) 最后, P 为固定置换。

Page 15: 第三章 现代加密方法

A=R(32 bits) J=K(48 bits)

E

E(A) 为 48 bits +

B1 B2 B3 B4 B5 B6 B7 B8

S1 S2 S3 S4 S5 S6 S7 S8

C1 C2 C3 C4 C5 C6 C7 C8

P

32 bits F(A,J)

B 写成 8 个 6 比特串

DES 的 F 函数

Page 16: 第三章 现代加密方法

• DES 中使用的其它特定函数:初始置换 IP :见 68 页表 3.2, 从表中看出 X 的第 58 个比特是 IP ( X )的第一个比特; X 的第 50 个比特是 IP( X )的第二个比特…逆置换 IP-1 ;扩展函数 E ;置换函数 P 。

• 从密钥 K 计算子密钥: 实际上, K 是长度为 64 的位串,其中 56 位是密钥,8 位是奇偶校验位(为了检错),在密钥编排的计算中,这些校验位可略去。(1). 给定 64 位的密钥 K ,放弃奇偶校验位( 8 , 16 ,…, 64 )并根据固定置换 PC-1 (见 72 页表 3.4( a ))来排列 K 中剩下的位。我们写 PC-1(K)=C0D0

其中 C0 由 PC-1 ( K )的前 28 位组成; D0 由后 28 位组成。

Page 17: 第三章 现代加密方法

• (2) 对 1<=i<=16 ,计算Ci=LSi(Ci-1)Di=LSi(Di-1)LSi 表示循环左移 2 或 1 个位置,取决于 i 的的值。 i=1,2,9 和 16 时移 1 个位置,否则移 2 位置。Ki=PC-2(CiDi), PC-2 为固定置换 , 见 72 页 3.4(b) 。

• 注:一共 16轮,每一轮使用 K 中 48 位组成一个 48 比特密钥。可算出 16 个表,第 i 个表中的元素可对应上第 i轮密钥使用 K 中第几比特!如:第 7轮的表 7 : K7 取 K 中的比特情况:52 57 11 1 26 59 10 34 44 51 25 199 41 3 2 50 35 36 43 42 33 60 1828 7 14 29 47 46 22 5 15 63 61 394 31 13 38 53 62 55 20 23 37 30 6

Page 18: 第三章 现代加密方法

图表(密钥生成 Ki )K

PC-1

C0 D0

LS1 LS1

C1 D1

LS2 LS2

LS16 LS16

C16 D16

PC-2

PC-2

K1

K16

Page 19: 第三章 现代加密方法

• DES 加密的一个例子取 16 进制明文 X : 0123456789ABCDEF密钥 K 为: 133457799BBCDFF1去掉奇偶校验位以二进制形式表示的密钥是 00010010011010010101101111001001101101111011011111111000应用 IP ,我们得到:L0=11001100000000001100110011111111L1=R0=11110000101010101111000010101010然后进行 16轮加密。最后对 L16, R16 使用 IP-1 得到密文: 85E813540F0AB405

Page 20: 第三章 现代加密方法

3 DES 的争论

• DES 的核心是 S 盒,除此之外的计算是属线性的。 S盒作为该密码体制的非线性组件对安全性至关重要。

• 1976 年美国 NSA提出了下列几条 S 盒的设计准则:1. S 盒的每一行是整数 0 ,…, 15 的一个置换2. 没有一个 S 盒是它输入变量的线性函数3.改变 S 盒的一个输入位至少要引起两位的输出改变4. 对任何一个 S 盒和任何一个输入 X , S ( X )和 S(X001100 )至少有两个比特不同(这里 X 是长度为 6 的比特串)5. 对任何一个 S 盒,对任何一个输入对 e,f属于 {0,1},S(X) S(X11ef00)

Page 21: 第三章 现代加密方法

• 6. 对任何一个 S 盒,如果固定一个输入比特,来看一个固定输出比特的值,这个输出比特为 0 的输入数目将接近于这个输出比特为 1 的输入数目。

• *公众仍然不知道 S 盒的构造中是否还使用了进一步的设计准则。

• 参见 74 页 3.4 DES 的强度。

Page 22: 第三章 现代加密方法

4 差分密码分析与线性密码分析

• (1) 差分密码分析 对 DES 有效的分析方法 --差分分析方法,是由 E.Biham 和 A.Shamir提出的。见Differential Cryptanalysis of DES-like Cryptosystems. E.Biham A.ShamirThe Weizmann Institute of ScienceDepartment of Aplied Mathematics

June 18,1999该文给出选择性明文攻击,是一个很有效的方法。对于攻击 8轮 DES ,在 486那样的计算机上,只需 2 分钟可攻破。

Page 23: 第三章 现代加密方法

• 首先说明:1. 对于 DES 的分析,可忽略初始置换 IP 和 IP-1 。2. 对 DES限制到 n轮( n<=16 )。3. 以 L0R0 为明文,且以 LnRn 作为 n轮 DES 的密文。4. 对两个明文 L0R0 和 L0

*R0* ,规定它们的异或值为 L0´

R0 ´ =L0R0 L0*R0

* ,整个讨论都使用撇号( ´ )表示两个比特串的异或值。

• 定义 1 :设 Sj 是一个特定的 S 盒( 1<=j<=8) ,考虑长度为 6 的比特串的一个有序对( Bj,Bj

* ) ,我们说 Sj 的输入异或是 Bj Bj

*, 输出异或是 Sj(Bj) Sj(Rj*)

• 注:输入异或是长度为 6 的比特串,输出异或是长度为 4 的比特串。

Page 24: 第三章 现代加密方法

• 定义 2 :对任何一个 Bj´(Z2)6= {a0,a1,a2,a3,a4,a5|aj {0,∈1}} ,定义集合△ (Bj´) 是由输入异或为 Bj´ 的有序对(Bj,Bj

*) 组成。• 注: 1*. 对比特串 Bj´ 来说,集合△ (Bj´)包含 26=64 个

有序对元素。有 △ (Bj´)={(Bj,Bj Bj´)| Bj (Z∈ 2)6} 2*. 对△ (Bj´) 中的每一对,我们能计算出 Sj 的输出异或,同时用表列出结果的分布。 有 64 个输入异或,它们经 Sj 的输出分布在 24=16种可能值之中,这些分布的非均匀性,就是攻击 DES的基础。

Page 25: 第三章 现代加密方法

• 3*. 表示一个 S 盒的所有可能对的输入异或和输出异或分布的表称为该 S 盒的差分分布表。

• 例子 1 。若考虑第一个 S 盒 S1 ,输入异或为 B1´=110100, 那么: △ (B1´)= (110100)={(000000,110100),△ (000001, 110101), …., (111111, 001011)}对集合△ (B1´) 中的每一对,计算 S1 盒的输出异或。 例如 S1(000000)=E16=1110 S1(110100)=916=1001所以 (000000,110100) 的输出异或是 0111 。计算△ (B1´)= (110100)△ 中所有 64 对的输出异或,得输出异或分布表:

+

Page 26: 第三章 现代加密方法

0 个 8 个 16 个 6 个 2 个 0 个 0 个 12 个

1000 1001 1010 1011 1100 1101 1110 1111

6 个 0 个 0 个 0 个 0 个 8 个 0 个 16 个

• 0000 0001 0010 0011 0100 0101 0110 0111

注意! 16 个可能输出异或中,仅有 8种出现。它们的分布是不均匀的。一般说来,对固定的一个 S 盒 Sj 说来,给一个输入异或 Bj

´, 那么平均出现 75%-80% 的相异输出异或。

• 为描述这类分布如何产生的,先表述一些进一步的概念。

Page 27: 第三章 现代加密方法

• 定义 3 :对长度为 6 的比特串 Bj´ 和长度为 4 的比特串 C

j´ (1<=j<=8), 定义 INj(Bj

´,Cj´)={Bj ( Z2 ) 6|Sj(Bj) Sj(Bj Bj

´)=Cj´}

Nj(Bj´,Cj

´)=|INj(Bj´,Cj

´)|

• 注: 1*. 对特定的 S 盒 Sj, 它的输入异或为 Bj´ 且相应的

输出异或为 Cj´ ,这里 Nj(Bj

´,Cj´) 就是用来表示其输入对

的数目。 2*. 对于上述例子 1 中的输出异或分布表表现了 N1

( 110100 , C1´ ) ( 其中 C1

´ (Z2)4)所指示的对 S 盒 S1

来说,它的输入异或为( 110100 )且相应的输出异或为 C1

´ 的分布情况。 3*. 对于集合 IN1 ( 110100 , C1

´ ),表示输入异或为( 110100 )的所有可能输入引起输出异或情况的分布表,见下页:

Page 28: 第三章 现代加密方法

输出异或 可能输入0000

0001 000011,001111,011110,011111

101010,101011,110111,111011

0010 000100,000101,001110,010001

010010,010100,011010,011011

100000,100101,010110,101110

101111,110000,110001,111010

0011 000001,000010,010101,100001

110101,110110

0100 010011,100111

0101

0110

0111 000000,001000,001101,010111

011000,011101,100011,101001

101100,110100,111001,111100

1000 001001,001100,011001,101101

111000,111101

1001

1010

1011

1100

1101 000110,010000,010110,011100,100010,100100,101000,110010

1110

1111 000111,001010,001011,110011,111110,111111

Page 29: 第三章 现代加密方法

• 考虑一般的情况:对于 DES 的 8 个 S 盒的每一个盒有 64种可能的输入异或,于是可算出有 512 个分布。回忆上一讲:知在第 i轮中 S 盒的输入为 B=E J ,其中 E=E ( R

i-1 )是 Ri-1 的扩展, J=Ki 是由第 i轮的密钥比特组成。现在对所有 8 个 S 盒的输入异或计算如下: B B*=(E J) (E* J)= E E*=E´由此可见,输入异或不依赖于密钥比特 J.将 B , E 和 J均写成 8 个 6 比特串的并: B=B1B2B3B4B5B6B7B8

E=E1E2E3E4E5E6E7E8

J=J1J2J3J4J5J6J7J8

类似地可表述 B* , E* , J* (表达式略) 假设我们知道 Ej 和 Ej

* 的值(对某一个 j,1<= j<=8 )和 Sj 的输出异或值 Cj ´=Sj(Bj) Sj(Bj

*), 那么必有 Ej JjINj(Ej ´,Cj ´) , Bj=Ej Jj; Bj ´=Ej Ej

*

Page 30: 第三章 现代加密方法

• 我们的目的是要破译密钥 J 的部分比特串 Jj 。定义测试集合 Testj

• 定义 4 ( Testj ) : 设 Ej 和 Ej* 是长度为 6 的比特串, Cj

´ 是长度为 4 的比特串,定义 Testj(Ej,Ej

*,Cj´)={Bj Ej|Bj IN∈ j(Ej

´,Cj´)}

这里 Bj Ej 是 Jj 的形式, Ej 是固定的 ,Ej´=Ej Ej

*

我们有• 定理 1 :假设 Ej 和 Ej

* 是 S 盒 Sj 的两个输入, Sj 的输出译或为 Cj

´ ,记 Ej ´=Ej Ej

* ,那么密钥比特 Jj 出现在集合 Testj(Ej,Ej

*,Cj ´)之中。

注:可见在集合 Testj(Ej,Ej*,Cj

´) 中,长度为 6 比特刚好有 Nj(Ej

´,Cj ´) 个, Jj 的正确值一定是这些可能值中的一

个。

Page 31: 第三章 现代加密方法

• 例子 2 :假设 E1=000001 , E1*=110101 和 C1 =1101 ,因为 N1

( 110100 , 1101 ) =8 ,(见第 5面 110100 输入分布表),可知集合 Test1(000001 , 110101 , 1101 )中,刚好有 8 个比特串:原因为可从表中得到: IN1 ( 110100 , 1101 ) ={000110 , 010000 , 010110 ,011100 , 100010 , 100100 , 101000 , 110010}分别计算它们与 E1=000001 的异或得: Test1(000001,110101,1101)={000111,010001,0101111,011101,100011,100101,101001,110011}如果有两个这样的三元组 E1 , E1

* , C1 ,那么就可得到 J1 中密钥比特可能值的第 2 个集合 Test1

(2)(E1,E1*,C1) 。易见密钥比

特 Jj Test∈ 1∩Test1 (2) !! 自然这样的三元组如果更多些,定出 Jj 是肯定的。关于这方面的计算,可想出若干技巧。

Page 32: 第三章 现代加密方法

攻击 3 轮 DES

明文 P(64bits)

F

F

F

+L0

+

+

密文

R0

K1

Li=Ri-1

Ri=Li-1 f(Ri-1,Ki)

K2

R1=L0 f(R0,K1)

K3

R2=L1 f(R1,K2)

R3=L2 f(R2,K3)

L1=R0

L2=R1

L3=R2

3 轮 DES 图

A

B

C

Page 33: 第三章 现代加密方法

DES 的 F 函数

输入 32 比特E

48bitsE1|E2|E3|E4|E5|E6|E7|E8

子密钥J1|J2|J3|J4|J5|J6|J7|J8

+

BB1 B2 B3 B4 B5 B6 B7 B8

S1 S2 S3 S4 S5 S6 S7 S8

C1 C2 C3 C4 C5 C6 C7 C8

P

Output(32bits)

Page 34: 第三章 现代加密方法

• 我们对 3轮作选择明文攻击。用明文对和相应的密文对开始我们的分析:明文对为: L0R0; L0

*R0*

密文对为: L3R3; L3*R3

* 。有表达式: R3=L2 f(R2,K3)=R1 f(R2,K3) =L0 f(R0,K1) f(R2,K3)R3

* 可用类似的方法得到: R3

*=L0* f(R0

*,K1) f(R2*,K3), 于是有

R3´=L0´ f(R1,K1) f(R0*,K1) f(R2,K3) f(R2

*,K3) 假设选择了明文,使 R0=R0

*, 此时 R0´=00…0且 f(R0,K)=f(R0

*,K) ,所以 R3´=L0´ f(R2,K3) f(R2

*,K3)由于 R3´ 可从两个密文 R3,R3

* 计算出,可知 R3´ 和 L0´已知。有:

F(R2,K3) f(R2*,K3)=R3´ L0´

Page 35: 第三章 现代加密方法

• 知 f(R2,K3)=P(C) 和 f(R2*,K3)=P(C*), 其中

C 和 C* 分别表示 8 个 S 盒的两个输出。而 P 是固定的,为公开已知的置换,因此 P(C) =P(C*)=R3´ L0´, 由此可知 C´=C C*=P-1(R3´ L0´)…. 为 3轮中 8 个 S 盒的两个输出异或。另外, R2=L3 和 R2

*=L3* 是已知的(它们是密文的一部分),

因此,可用公开已知的扩展函数 E 计算E=E(L3) 和 E*=E(L3

*)对第三轮说来,它们是 S 盒的输入。于是可由 E , E* 和 C 。象前面的例子那样对 J1 , J2 , J3 , J4 , J5 , J6 , J7 , J8 中密钥比特可能值,着手构造集合 Test1,Test2,…, Test8 。由它们来确定第三轮密钥 K3 中的 48bits 。 56bits 密钥中剩下的 8 比特可通过穷举 28=256种可能来确定。

Page 36: 第三章 现代加密方法

• 3 轮 DES 的差分攻击模式:输入: L0R0,L0

*R0*,L3R3 和 L3

*R3* ,其中 R0=R0

*

1. 计算 C =P-1(R3 L0 )2. 计算 E=E(L3) 和 E*

3. For j=1 to 8 do 计算 Testj(Ej,Ej*,Cj )

例子 3 。我们有如下三组明密文对,并有固定的异或值。用相同的密钥进行加密。为简单用 16 进制表示 .明文 密文 748502CD38451097

03C70306D8A09F103874756438451097 78560A0960E6D4CB486911026ACDFF31 45FA28BE5ADC730375BD31F6ACDFF31 134F7915AC253457357418DA013FEC86 D8A31B2F28BBC5CF12549847013FEC86 0F317AC2B23CB944

Page 37: 第三章 现代加密方法

• 对第一组,可计算 S 盒的输入(对第三轮),它们是 E=E(L3)=0000000001111110000011101 00000000110100000001100E*=E(L3

*)=10111111000000101010110000

0001010100000001010010还可算出 S 盒的输出异或为:C=C C*=P-1(R3 L0 )=10010110010111010101101100111对第二组,第二组给出相同的计算,结果(略)。我们给出八个计数器阵列,每个阵列为 16*4 。这样按书写方式排有 64 个位置: 0,1,2,…,63 。在第一组中,我们有 E1 =101111 和 C1 =1001, 集合 IN1(101111,1001)={000000,000111,101000,101111}

Page 38: 第三章 现代加密方法

• 因为 E1=000000 ,我们有 J1 Test∈ 1(000000,101111,1001)={ 000000, 000111,101000,101111}将其中 6bits 串用 2 进制数表示成对应 J1 阵列中的位置数 0,7,40,47 对应于 {000000,000111,101111}, 相当于在阵列表的空位的相应位置增值 1

J1

1 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0

0 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0

0 1 0 0 0 1 0 0 1 0 0 0 0 0 0 1+1+1

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Page 39: 第三章 现代加密方法

• 对三组算得的三个集合 Test1(1),Test1

(2),Test1(3) 。它们中

的元素对应的数增值 J1 位置处的 1 个单位数。于是算得 J1=47=101111 ,类似地方法定出 J2=000101 ,J3=010011 , J4=0000000 , J5=011000 , J6=000111 ,J7=000111 , J8=110001

• 注: 1*.差分攻击技术还可用于 6轮 DES ,对 8轮的DES需 214 个组选择明文。现在对 16轮 DES 也是相当有效的。见 :www.cryptography.com 。2*. 对其它体制的攻击,例 Feal,LOKI,REDOC-II ,也是有效的。

Page 40: 第三章 现代加密方法

• (2). 线性密码分析见书 78 页。参考文献:Matsui. M, Linear Cryptanalytic Method for DES Cipher,Advances in Cryptology-Eurocrypt´93,Springer-Verlag, PP.398-409, 1994.