常用的加密算法,包括对称加密、非对称加密、和散列加密。由于对称加密接收方和发送方采用相同的秘钥且效率比较高,使用的比较广泛。但是在一对多的通信过程中分发秘钥的时候秘钥有泄漏的风险,所以引入了非对称加密。非对称加密接收方和发送方采用了不同的秘钥这样就能确保秘钥内容在发送的过程中不会被泄漏。很多时候我们加密不需要反向解密,只需获得内容的一个特征值,这时候就需要用到散列加密算法。
对称加密算法
所谓对称加密就是,信息的发送方和接收方采用相同的秘钥对内容进行加密和解密。流程如下图所示:
常用的加密算法有DES、IDEA、AES、和国密SM1和SM4
DES(数据加密标准,Data Encryption Standard)
DES应该是最早的密码学算法之一,由美国政府提出,秘钥长度为56位.目前暴力破解56位秘钥的时间已经能控制在24小时之内。
DES实际上是一个过时的密码学算法,目前已经不推荐使用了。关于DES,还有一点特别有意思。DES包含一个关键模块:S盒,其设计的原理一直没有公开。因此,很多人都相信,这个S盒中存在后门,只要美国政府需要,就能够解密任何DES密文。
AES(高级加密标准,Advanced Encryption Standard)
DES被破解后,美国推出的加密算法