DES概述

DES是一种对称分组加密算法,主要用于加密信息。DES是一种将64比特明文加密成64比特的密文的堆成密码算法,但是真实有效的密钥是56位,因为每八位就有一位是用来校验密钥的错对的,换句话来说DES的加密是一组一组来的,每一组都是64比特。但是DES已经不再安全了,在1999年的时候,DES Challenge III 破解DES仅仅花费了22小时15分钟,所以更不用说现在的计算水平了。

DES的加密手段

(我在看书中的加密解密算法的时候觉得就是如果要去读懂需要一些数学基础,但是如果以没有数学基础的角度去看的话,就好像是去看一些不理解的流程,如果我要去给别人说这个就只能背下来了,所以我就大概说一说就好了)

因为DES是一种对称加密算法,所以我们可以很好理解,对称加密就是使用同一种方式去进行加密解密的,我们可以这么理解其加密和解密过程,它就是一种机器,这个机器时需要一个64比特密钥去启动,而且每次加密都只能加密64分组,对端在接收到这些加密地分组之后使用相同的密钥和相同的机器,反方向地进行内容地输出,最后得到明文。

DES反解密 des解密图_https

 

3DES的概述

3DES,顾名思义就是将明文进行三轮的DES加密最后得到的密文,其还是以64比特为分组的加密算法

3DES的加密

如果还是使用上面的比喻的话,3DES就像是一个将三台DES机器连接起来,因为要使用三台DES机器,所以就需要三个密钥去启动,我们从这台组合机器的头部将明文输入,然后在尾部接收密文信息并传输出去。因为它的基本的组成机器还是DES的机器,所以每次依然还是只能处理64比特的信息,且三台DES机器使用的密钥长度都是64比特。3DES虽然具有一定的安全性,但是也不推荐使用了,因为AES密码算法比3DES更快,更安全。3DES只有在一些需要兼容性的场景才使用,就比如一些老的地方之前使用的是DES加密,那么为了向下兼容的同时还保证安全性就需要使用3DES加密算法

DES反解密 des解密图_安全_02

 

AES的概述

就是因为DES十分容易就被破解了,所以NIST这个组织就赶紧组织人去再搞一个安全一点的算法出来,AES只是定义的标准名,AES密码算法后面的原理算法名字叫Rijndael。Rijndael算法背后又着严谨的数学结构,也就是说明文到密文的计算过程可以全部用公式去表示,这是之前的加密算法都不具备的性质。AES每次处理的分组长度为固定的128比特,也就是16个字节,AES使用的密钥长度是变长的,有128比特,192比特,256比特,密钥长度越长越安全

对称加密算法的选择

如果大家要选择一个对称加密算法,那么毫无疑问是AES,AES-128在具备一定速度的同时也具备一定的安全特性,可以理解为一种平衡型的加密算法,如果要更安全一点那就使用AES-192,同样的,如果你觉得你的信息需要非常安全的保护,那就使用AES-256