des举例gz.docx

上传人:b****6 文档编号:5761694 上传时间:2023-01-01 格式:DOCX 页数:15 大小:21.39KB
下载 相关 举报
des举例gz.docx_第1页
第1页 / 共15页
des举例gz.docx_第2页
第2页 / 共15页
des举例gz.docx_第3页
第3页 / 共15页
des举例gz.docx_第4页
第4页 / 共15页
des举例gz.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

des举例gz.docx

《des举例gz.docx》由会员分享,可在线阅读,更多相关《des举例gz.docx(15页珍藏版)》请在冰豆网上搜索。

des举例gz.docx

des举例gz

假设m=computer=>63,6F,6D,70,75,74,65,72

k=network=>6E,65,74,77,6F,72,6B

请用DES加密法加密,写出加密过程:

解:

1、先求密钥K1

因为:

k=01101100,01100101,01110100,01110111,

01101111,01110010,01101011

1.1先拓展到64位:

在每七位后加一位校验位

K(temp)=0110110*,0011001*,0101110*,1000111*,0111011*,

0111101*,1100100*,1101011*

排成8*8矩阵如下:

0

1

1

0

1

1

0

*

0

0

1

1

0

0

1

*

0

1

0

1

1

1

0

*

1

0

0

0

1

1

1

*

0

1

1

1

0

1

1

*

0

1

1

1

1

0

1

*

1

1

0

0

1

0

0

*

1

1

0

1

0

1

1

*

1.2根据置换选择pc-1的进行变换,其过程如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

57

49

41

33

25

17

9

1

58

50

42

34

26

18

10

2

59

51

43

35

27

19

11

3

60

52

44

36

63

55

47

39

31

23

15

7

62

54

46

38

30

22

14

6

61

53

45

37

29

21

13

5

28

20

12

4

 

PC-1=>

0

1

1

0

1

1

0

*

置换选择pc-1

1

1

0

0

1

0

0

0

0

1

1

0

0

1

*

0

1

1

1

1

0

1

0

1

0

1

1

1

0

*

0

1

0

0

1

1

0

1

0

0

0

1

1

1

*

0

1

1

1

0

1

1

0

1

1

1

0

1

1

*

1

0

1

1

1

0

1

0

1

1

1

1

0

1

*

0

1

0

0

1

1

1

1

1

0

0

1

0

0

*

0

1

0

1

1

0

1

1

1

0

1

0

1

1

*

1

0

1

0

1

1

0

故有:

规律:

右表的前28位,是从左表的左下角开始,由下向上依次取,并按7位分组填入右表;右表的后28位,是从左表的7右下角开始,由下向上依次取,并按7位分组填入右表.(注:

最后一行是区剩下的).

1.3将右表分为两组:

前28位一组C0,后28位一组D0

可得如下:

C0=1100100,0111101,0100110,0111011

D0=1011101,0100111,0101101,1010110

1.4将C0,D0左循环移位,根据下表确定移多少位:

轮数:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

位数:

1

1

2

2

2

2

2

2

1

2

2

2

2

2

2

1

所以这里左移一位.

C0=1100100,0111101,0100110,0111011

C1=100100,0111101,0100110,01110111

D0=1011101,0100111,0101101,1010110

D1=011101,0100111,0101101,10101101

1.5在将C1,D1组合成8行*7列的矩阵,如下:

C1=100100,0111101,0100110,01110111

D1=011101,0100111,0101101,10101101

14

17

11

24

1

5

3

28

15

6

21

10

23

19

12

4

26

8

16

7

27

20

13

2

41

52

31

37

47

55

30

40

51

45

33

48

44

49

39

56

34

53

46

42

50

36

29

32

 

1.6根据置换选择PC-2进行变换过程如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

1

0

0

1

0

0

0

1

1

1

1

0

1

0

1

0

0

1

1

0

0

1

1

1

0

1

1

1

0

1

1

1

0

1

0

1

0

0

1

1

1

0

1

0

1

1

0

1

1

0

1

0

1

1

0

1

PC-2

 

规律:

将9,18,22,25,35,38,43,54去掉;其他的没有规律.

 

PC-2

 

故得到48位的K1,

0

0

1

1

1

0

0

1

1

0

0

1

1

1

0

1

1

1

0

0

1

0

1

0

1

0

1

0

0

0

1

1

1

1

0

1

0

1

1

1

1

1

1

0

0

1

0

1

1

0

0

1

0

0

0

1

1

1

1

0

1

0

1

0

0

1

1

0

0

1

1

1

0

1

1

1

0

1

1

1

0

1

0

1

0

0

1

1

1

0

1

0

1

1

0

1

1

0

1

0

1

1

0

1

K1=001110,011001,110111,001010,101000,111101,011111,100101

算完K1后,取C1,D1从1.4开始迭代16次

2、明文用密钥加密

2.1、变换明文,分为两组

m=computer=>63,6F,6D,70,75,74,65,72

m=01100011,01101111,01101101,01110000,

01110101,01110100,01100101,01110010

组成8*8矩阵如下

0

1

1

0

0

0

1

1

0

1

1

0

1

1

1

1

0

1

1

0

1

1

0

1

0

1

1

1

0

0

0

0

0

1

1

1

0

1

0

1

0

1

1

1

0

1

0

0

0

1

1

0

0

1

0

1

0

1

1

1

0

0

1

0

进行初始变换IP,

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

58

50

42

34

26

18

10

2

60

52

44

36

28

20

12

4

62

54

46

38

30

22

14

6

64

56

48

40

32

24

16

8

57

49

41

33

25

17

9

1

59

51

43

35

27

19

11

3

61

53

45

37

29

21

13

5

63

55

47

39

31

23

15

7

==>

IP

 

故有初始变换:

IP

0

1

1

0

0

0

1

1

0

1

1

0

1

1

1

1

0

1

1

0

1

1

0

1

0

1

1

1

0

0

0

0

0

1

1

1

0

1

0

1

0

1

1

1

0

1

0

0

0

1

1

0

0

1

0

1

0

1

1

1

0

0

1

0

1

1

1

1

1

1

1

1

1

0

1

1

1

0

0

0

0

1

1

1

0

1

1

0

0

1

0

1

0

1

1

1

0

0

0

0

0

0

0

0

1

1

1

1

1

1

1

1

0

0

0

0

0

1

1

0

1

0

0

0

0

0

1

1

分成两组:

前32位一组L0,后32位一组R0

L0=11111111,10111000,01110110,01010111

R0=00000000,11111111,00000110,10000011

并且将R0=00000000,11111111,00000110,10000011

组合成8行*4列矩阵如下:

0

0

0

0

0

0

0

0

1

1

1

1

1

1

1

1

0

0

0

0

0

1

1

0

1

0

0

0

0

0

1

1

 

2.2、将R0扩展为48位

根据选择扩展运算E,来扩展

E

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

32

1

2

3

4

5

4

5

6

7

8

9

8

9

10

11

12

13

12

13

14

15

16

17

16

17

18

19

20

21

20

21

22

23

24

25

24

25

26

27

28

29

28

29

30

31

32

1

故有:

0

0

0

0

0

0

0

0

1

1

1

1

1

1

1

1

0

0

0

0

0

1

1

0

1

0

0

0

0

0

1

1

1

0

0

0

0

0

0

0

0

0

0

1

0

1

1

1

1

1

1

1

1

1

1

0

1

0

0

0

0

0

0

0

1

1

0

1

0

1

0

0

0

0

0

0

0

1

1

0

因此,

R0(t48)=100000,000001,011111,111110,

100000,001101,010000,000110

2.3、将R0(t48)与密钥K1进行XOR

R0(t48)=100000,000001,011111,111110,100000,001101,010000,000110

K1=001110,011001,110111,001010,101000,111101,011111,100101

得出48位结果R0(X48)=

101110,011000,101000,110100,001000,110000,001111,100011

2.4、进行S盒输出,其定义如下:

S1:

  

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

0

14

4

13

1

2

15

11

8

3

10

6

12

5

9

0

7

1

0

15

7

4

14

2

13

1

10

6

12

11

9

5

3

8

2

4

1

14

8

13

6

2

11

15

12

9

7

3

10

5

0

3

15

12

8

2

4

9

1

7

5

11

3

14

10

0

6

13

S2:

 

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

0

15

1

8

14

6

11

3

4

9

7

2

13

12

0

5

10

1

3

13

4

7

15

2

8

14

12

0

1

10

6

9

11

5

2

0

14

7

11

10

4

13

1

5

8

12

6

9

3

2

15

3

13

8

10

1

3

15

4

2

11

6

7

12

0

5

14

9

S3:

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

0

10

0

9

14

6

3

15

5

1

13

12

7

11

4

2

8

1

13

7

0

9

3

4

6

10

2

8

5

14

12

11

15

1

2

13

6

4

9

8

15

3

0

11

1

2

12

5

10

14

7

3

1

10

13

0

6

9

8

7

4

15

14

3

11

5

2

12

S4:

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

0

7

13

14

3

0

6

9

10

1

2

8

5

11

12

4

15

1

13

8

11

5

6

15

0

3

4

7

2

12

1

10

14

9

2

10

6

9

0

12

11

7

13

15

1

3

14

5

2

8

4

3

3

15

0

6

10

1

13

8

9

4

5

11

12

7

2

14

S5:

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

0

2

12

4

1

7

10

11

6

8

5

3

15

13

0

14

9

1

14

11

2

12

4

7

13

1

5

0

15

10

3

9

8

6

2

4

2

1

11

10

13

7

8

15

9

12

5

6

3

0

14

3

11

8

12

7

1

14

2

13

6

15

0

9

10

4

5

3

S6:

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

0

12

1

10

15

9

2

6

8

0

13

3

4

14

7

5

11

1

10

15

4

2

7

12

9

5

6

1

13

14

0

11

3

8

2

9

14

15

5

2

8

12

3

7

0

4

10

1

13

11

6

3

4

3

2

12

9

5

15

10

11

14

1

7

6

0

8

13

 

S7:

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

0

4

11

2

14

15

0

8

13

3

12

9

7

5

10

6

1

1

13

0

11

7

4

9

1

10

14

3

5

12

2

15

8

6

2

1

4

11

13

12

3

7

14

10

15

6

8

0

5

9

2

3

6

11

13

8

1

4

10

7

9

5

0

15

14

2

3

12

S8:

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

0

13

2

8

4

6

15

11

1

10

9

3

14

5

0

12

7

1

1

15

13

8

10

3

7

4

12

5

6

11

0

14

9

2

2

7

11

4

1

9

12

14

2

0

6

10

13

15

3

5

8

3

2

1

14

7

4

10

8

13

15

12

9

0

3

5

6

11

故有:

查表过程如下:

原始数据

行,列

盒子

查得数据

二进制表示

1

0

1

1

1

0

2,7

S1

11

1011

0

1

1

0

0

0

0,12

S2

12

1100

1

0

1

0

0

0

2,4

S3

8

1000

1

1

0

1

0

0

2,10

S4

3

0011

0

0

1

0

0

0

0,4

S5

7

0111

1

1

0

0

0

0

2,8

S6

7

0111

0

0

1

1

1

1

1,7

S7

10

1010

1

0

0

0

1

1

3,1

S8

1

0001

R0(S32)=1011,1100,1000,0011,0111,0111,1010,0001

2.4、对R0(S32)进行置换运算P

置换运算P

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

16

7

20

21

29

12

28

17

1

15

23

26

5

18

31

10

2

8

24

14

32

27

3

9

19

13

30

6

22

11

4

25

故有:

1

0

1

0

0

0

0

0

1

1

1

0

1

1

0

0

0

0

1

0

1

1

1

1

1

0

0

1

1

0

1

1

1

0

1

1

1

1

0

0

1

0

0

0

0

0

1

1

0

1

1

1

0

1

1

1

1

0

1

0

0

0

0

1

置换运算P

 

所以,R0(P32)=1010,0000,1110,1100,0010,1111,1001,1011

2.5、将R0(P32)与L0进行XOR运算得R1

R0(P32)=1010,0000,1110,1100,0010,1111,1001,1011

L0=1111,1111,1011,1000,0111,0110,0101,0111

运算得R1=0101,1111,0101,0100,0101,1001,1100,1100

而L1=R0=00000000,11111111,00000110,10000011

这样就完成了一轮运算。

0000,0000,1111,1111,0000,0110,1000,0011,

0101,1111,0101,0100,0101,1001,1100,1100

得到一轮加密的结果为:

00,FF,06,83,5F,54,55,66

翻译为字符是:

NULL,ÿ,ACK,á,_,T,U,f

3、进行2-16轮迭代运算从2.2开始

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 其它模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1