DES算法原理详解

本文详细介绍了DES(Data Encryption Standard)算法的工作原理,包括子密钥生成过程、加密过程和解密过程。DES算法使用56位密钥对64位数据块进行16轮加解密,其安全性基于密钥的保密。在子密钥生成中,经过PC-1和PC-2置换以及循环左移生成16个48位字密钥。加密过程涉及IP初始置换、E盒、S盒、P盒等操作,解密过程则按相反顺序进行。
摘要由CSDN通过智能技术生成

1.DES算法

DESData Encryption Standard),是IBM在上世纪70年代开发的单密钥对称加解密算法。该算法用56位密钥+8位奇偶校验位=64位的密钥对以64位为单位的数据块进行16轮加解密处理。DES的安全性不依懒于算法的保密,安全性仅以加密密钥的保密为基础。

1.1子密钥生成过程

用户输入的密钥被转化成64比特的二进制,然后按照密钥置换函数PC-18X7)压缩置换成56位,输出前28位为C0输出后28位为D0。然后将C0D0进行16轮的循环左移及压缩置换PC-28X6),生成1648位的字密钥。

Ø  PC-18X7)压缩置换

假设密钥K64位)=133457799BBCDFF1,红色部分为奇偶校验位。

K64位)=00010011 00110100 01010111 01111001

                10011011 10111100 11011111 11110001

1密钥置换函数PC-18X7

PC-1

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

 

        K使用PC-18X7)压缩置换,去掉8个校验位,从而得到K'。

K

  • 6
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值