DES加密学习

先来无聊的发展史:

DES全称为Data Encryption Standard,即数据加密标准,是一种使用密钥加密的块算法,1977年被美国联邦政府的国家标准局确定为联邦资料处理标准(FIPS),并授权在非密级政府通信中使用,随后该算法在国际上广泛流传开来。需要注意的是,在某些文献中,作为算法的DES称为数据加密算法(Data Encryption Algorithm,DEA),已与作为标准的DES区分开来。

加密大概思路图:

在这里插入图片描述
1.将56byte的密钥通过算法得到16个不同的密钥
2.把要加密的数据使用16个不同的密钥通过,16轮相同的算法加密

细节(以8byte的加密数据,10byte的密钥为例子):

1.密钥加密:
在这里插入图片描述
先将10byte的密钥替换顺序
在这里插入图片描述
替换后的数据分为两组
在这里插入图片描述
进行一次轮交换
在这里插入图片描述
在这里插入图片描述
结果:
在这里插入图片描述
将处理后的10byte密钥再取:
在这里插入图片描述
第一轮的子密钥:
在这里插入图片描述
轮的轮密钥:
将第一轮的轮交换的数据再轮交换,也就是轮交换
在这里插入图片描述
后面同理;

2.DES轮过程(对数据加密的地方):

在这里插入图片描述

在这里插入图片描述
左半部分的就是右半部分

右半部分通过算法:
扩展一倍,和轮密钥亦或,替代(将8byte替换为4byte),置换

1.扩展在这里插入图片描述
2.亦或
在这里插入图片描述
3.替代(将8byte替换为4byte):
这步操作很重要
在这里插入图片描述
将8byte数据分为两组,取外侧,取内侧,组成二进制,翻译成10进制,作为表的行和列。得到表中的数据转换为二进制就是处理后的4byte
在这里插入图片描述
处理后的左右各4byte(左:原右边的4byte;右:右边处理后的数据,就是上边):
在这里插入图片描述
经过交换,再替换混淆得到密文

【附】

在线des加解密

信息安全概论-中国农业大学-des讲解

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

I Am Rex

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

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

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

打赏作者

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

抵扣说明:

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

余额充值