《图解密码学》第三章

7 篇文章 1 订阅

《图解密码学》第三章

一、从文字密码到比特序列密码

1、前置知识

当今密码都试建立在计算机的基础之上的,计算机的操作对象并不是文字,而是由0和1排列而成的比特序列。无论是文字、图像、声音、视频还是程序,在计算机中都是用比特来进行表示的。

2、编码

将现实世界中的东西映射为比特序列的操作称为编码。例如将midnight进行ASCII编码:

image-20210907093809541

3、XOR(异或)

XOR的运算规则如下:

image-20210907094222444

比特序列的XOR运算如下:

image-20210907094420683

从上图可以看出明文A用密钥B进行加密,得到了密文A+B,将密文A+B用B进行异或运算后得到明文A。实际上选择一个合适的B,使用XOR就能够得到一个高强度的密码。

二、一次性密码本

1、什么是一次性密码本

只要通过暴力破解对密钥空间进行遍历,无论什么密文都将会被破译。然而一次性密码本却是一个例外。

2、一次性密码本的加密

将明文与一串随机的比特序列进行XOR运算。

3、为什么不能被破译

因为随机性太大,即使通过暴力破解法得到,也无法判断他是否是正确的明文。

4、一次性密码本为什么没有被使用

  • 密钥的配送问题。
  • 如果能够很好的保存密钥,那也能够很好的保存明文。
  • 密钥的可重用性过低。
  • 密钥的生成,密钥的生成必须是真正的随机数。
  • 密钥的同步,当明文变得很长的时候,密钥也会随之变的很长。

5、一次性密码本孕育了流密码的产生

三、DES

1、什么是DES

DES是1977美国联邦信息处理标准中所采用的的一种对称密码。随着计算机的进步,DES已经能够被进行暴力破解。

2、DES加解密

DES是一种将64比特的明文加密成64比特的密文的对称密码算法。他的密钥长度为56比特,尽管从规格上来说,DES的密钥长度应该为64比特,但由于每隔7个比特会设置一个用于错误检验的比特,因此其密钥长度为56比特。

image-20210907145136395

3、分组密码

以分组为单位进行处理的密码算法称为分组密码,DES是以64比特的明文(比特序列)为单位进行加密的。

4、模式

DES每次只能加密64比特的数据,如果需要加密的数据比较长,就需要对DES加密进行迭代,而迭代的具体方式称为模式

5、DES的结构

DES的基本结构是由Horst Feistel设计的,因此也称为Feistel网络。在Feistel网络中加密的各个步骤称为,DES是一种16轮循环的Feistel网络。

image-20210907145852044

一轮的计算步骤如下:

image-20210907150220432

只要使用Feistel,就能够保证一定可以解密。加密和解密可以用完全相同的结构来进行实现。

6、差分分析与线性分析(选择明文攻击)

四、3DES

1、什么是3DES

3DES 是为了增加DES的强度,将DES重复3次所得到的一种密码算法,也称为TDEA。

2、3DES 的加密机制

image-20210907152702130

3DES的密钥长度为56*3=168 比特。从上图可以看出3DES是加密->解密->加密的过程。其目的是为了兼容普通的DES,3DES具有向下兼容性。

2、3DES的现状

3DES的处理速度较慢,除了特别重视向下兼容性的情况以外,很少被用于新的用途。

五、AES

1、什么是AES

AES(Advanced Encryption Standard)是取代其前任标准(DES)而成为新标准的一种对称密码算法。

2、什么是Rijndael

Rijndael是由比利时密码科学家设计的分组密码算法,在2000年被选选为新一代的标准密码算法(AES)。

Rijndael的密钥长度可以分为32比特为单位在128比特到256比特的范围内。不过在AES的规格中,分组长度固定为128比特,密钥长度只有128,192和256比特三种。

Rijndael的密钥长度可以分为32比特为单位在128比特到256比特的范围内。不过在AES的规格中,分组长度固定为128比特,密钥长度只有128,192和256比特三种。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值