在密码学中,加密算法分为双向加密和单向加密。
- 单向加密包括MD5、SHA等摘要算法,它们是不可逆的。
- 双向加密包括对称加密和非对称加密,对称加密包括AES加密、DES加密等。双向加密是可逆的,存在密文的密钥。AES算法是DES算法的替代者,也是现在最流行的加密算法之一
利用同一个密钥进行加/解蜜,是对称加密,不利用同一个密钥进行加解密,则是非对称加密
- AES、DES都是对称加密
对称加密
对称加密就是加密和解密都用同一个密钥,类似于摩斯密码
AES Advanced Encryption Standard
原理
AES的原理就是把原始数据,拆成一个个独立明文块(每一个长度128bit),对每一个进行加密后,再将所有的片段拼在一起,形成最终的加密结果。
具体介绍https://zhuanlan.zhihu.com/p/562256846
DES Data Encryption Standard
具体介绍https://www.ruanx.net/des/
3DES (Triple DES):
3DES是DES的一个改进版本,使用三个不同的密钥对数据进行三次加密。
Blowfish:
Blowfish是一种快速的对称加密算法,适用于加密大量数据。
非对称加密
RSA
历史及原理:https://www.ruanyifeng.com/blog/2013/06/rsa_algorithm_part_one.html
DSA
DSA只是一种算法,和RSA不同之处在于它不能用作加密和解密,也不能进行密钥交换,只用于签名,它比RSA要快很多。