密码学 | 对称加密算法DES

一、简介

DES全称为Data Encryption Standard,是一种对称密钥的分组加密算法。DES加密、解密用的密钥是一样的所有称之为对称密钥。这种算法在加密的过程中会把明文划分为很多个等长的块(block),然后对每个块进行加密,最后把所有的块拼在一起。也可以称之为“块加密”。

基本特征:

  • 分组长度为64位
  • 密钥64位,实际用到56位,其中8,16,24,32,40,48,56,64是奇偶校验位
  • 明文迭代16圈变为密文

二、流程

在这里插入图片描述

三、明文处理中常量表

1、初始置换IP(8*8)

利用初始置换IP对明文进行换位处理,打乱次序,得到一个乱序的64 bit 明文组。
在这里插入图片描述

2、逆初始置换表(8*8)

在这里插入图片描述

3、f函数P表(4*8)

在这里插入图片描述

4、扩展置换表E表(8*6)

把32位输入,扩展为48位
在这里插入图片描述

5、S盒(8 * 4 * 16)

在这里插入图片描述在这里插入图片描述

四、密钥编排常量表

1、初始置换PC-1表(7*8)

PC_1置换的目的是为了去掉64 bit密钥中的8个奇偶校验位,并对其余56位打乱排列。置换完成后,同样将密钥分成左右两部分各28 bit,左边为C0, 右边为D0。
在这里插入图片描述

2、PC-2表(6*8)

PC_2为固定置换,用于从 CnDn 中选取48 bit作为子密钥Kn,CnDn 表示从左到右将 Dn 排在 Cn 的后面,CnDn 的长度为56 bit。
在这里插入图片描述

五、总结

根据前面提到的常量表就可以很快的找出标准的DES加密,当然也可以使用ida著名的插件findcrypt。

The DES Algorithm Illustrated
DES CTF Wiki

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

404NooFound

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值