工作

图解密码技术学习-第三章 对称密码(共享密钥密码)

2016-09-07  本文已影响224人  JMasche

必要的基础知识

编码

将现实世界的内容(文字、图片、视频等所有的信息)转换成比特序列的过程就叫做编码。例如,ASC||编码

XOR(异或)

XOR运算是很基础的比特运算。只有当运算两个运算数不相同时,结果才是1;如果两个运算数相同,则结果是0。具体如下:
0 XOR 0 = 0
0 XOR 1 = 1
1 XOR 0 = 1
1 XOR 1 = 0

为什么要在密码技术中把XOR作为必要的基础知识呢?
我们把上面的运算式的等号和XOR互换一个位置,再从右往左读:
0 = 0 XOR 0
0 = 1 XOR 1
1 = 0 XOR 1
1 = 1 XOR 0

我们能看到什么呢?就是A和B的异或结果C,再和B异或一次,就等于A
这对于密码来说,就相当于加密和解密:
加密:明文 XOR 密钥 = 密文
解密:密文 XOR 密钥 = 明文

一次性密码本

一次性密码本是不能破译的,但也无法真正使用

一次性密码本原理

原理还是比较简单的,假设明文就是64比特的比特序列。随机生成等长的64比特的密钥,然后再和明文做异或运算。解密的时候,再用密文和密钥做一次异或运算就可以了。

一次性密码本是无法破译的

这里的破译是指,哪怕计算机的计算能力无限强大也无法破译。原因肯定不是出在密钥没有被暴力破解,而是说即使计算出来了也无法判断它是否正确
举个例子,原文是midnight,有可能破译出midnignht、mistress等等

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

流密码

一次性密码本诞生了一个概念:流密码,这么叫法是因为是针对每个比特进行加密的。流密码是用伪随机数生成器产生的比特序列。

DES

概述

DES ( Data Encryption Standard ),是一种对称密码,目前此密码已经能够被破解。

加解密原理

三重DES

AES

概述

AES (Advanced Encryption Standard)。这其实就是一种标准的名称,是美国标准化机构NIST选定的密码算法。
当时是公开竞标的,也就是说其实AES有多种候选算法,最终选定的是Rijndael。

AES加解密的特点

当前对称密码算法的应用

DES已经不推荐使用,三重DES目前只有兼容性场景才使用,目前认定使用的算法就是AES。

上一篇下一篇

猜你喜欢

热点阅读