DES算法原理及其实现

DES算法复杂难懂,但是易于实现。它只对小的位组进行简单的逻辑运算,用硬件和软件实现起来都比较有效。

描述:

分组加密算法, 64位一组; 对称算法; 密钥长度56位;基于加密的两个技术(混乱和扩散的组合);基于密钥作用于明文,称为轮(round), 在分组上16次实施相同的组合技术

概要:

  1. 对64位的明文分组进行操作
  2. 通过初始置换,将明文分成左半部分和右半部分,各32位长
  3. 进行16轮完全相同的运算,这些运算称为函数f,在运算过程中数据与密钥结合。
  4. 经过十六轮后,左、右半部分合在一起经过一个末置换(初始置换的逆置换)
    DES

一轮DES:

在每一轮中,密钥位移位,然后再从密钥的56位中选出48位,通过一个扩展置换将数据的右半部位扩展成48位,并通过一个异或运算与48位密钥结合,通过8个S盒将这个48位替代成新的32位数据,再将其置换一次。这4步运算构成了函数f。然后通过一个异或运算,函数f的输出与左半部分结合,其结果即称为新的有右半部分,原来的右半部分

  • 4
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值