目录
MD5简介
MD5信息摘要算法(Message Digest Algorithm,MD5),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。
AES简介
密码学中的高级加密标准(Advanced Encryption Standard,AES),又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES(Data Encryption Standard),已经被多方分析且广为全世界所使用。经过五年的甄选流程,高级加密标准由美国国家标准与技术研究院 (NIST)于2001年11月26日发布于FIPS PUB 197,并在2002年5月26日成为有效的标准。2006年,高级加密标准已然成为对称密钥加密中最流行的算法之一 。
MD5
MD5加密使用
MD5加密特点
- 无论输入的消息有多长,加密后的长度总是固定的。
- 只要输入的消息不同,对其进行加密后产生的内容也必不相同;但相同的输入必会产生相同的输出。
- 只能进行正向的信息加密,而无法从加密内容中恢复出任何的原消息,甚至根本就找不到任何与原信息相关的信息(不可逆性)。
MD5加密风险分析
字典表很大,在https://www.cmd5.com,存储超过90万亿个密码,很快速查询到一些密码强度不复杂的密码。
AES
AES加密使用
AES加密原理
AES加密过程涉及到4种操作,分别是字节替代、行移位、列混淆和轮密钥加。解密过程分别为对应的逆操作。由于每一步操作都是可逆的,按照相反的顺序进行解密即可恢复明文。加解密中每轮的密钥分别由初始密钥扩展得到。算法中16个字节的明文、密文和轮密钥都以一个4x4的矩阵表示。
AES加密特点
- 由于加密操作是需要32位字符密钥来进行,密钥保存在服务器端,因此安全度相对较高
- 双向加密,运算速度快,资源消耗少
AES加密风险分析
MD5和AES区别
MD5 | AES | |
加密方式 | 不可逆性加密 | 可逆性加密 |
安全性 | 相对较低 | 相对较高 |
性能 | 相对较高 | 相对较低 |