Java加密——摘要与加密的区别
摘要
- 定义
- 摘要是哈希值,我们通过散列算法比如MD5算法就可以得到这个哈希值。
- 摘要只是用于验证数据完整性和唯一性的哈希值,不管原始数据是什么样的,得到的哈希值都是固定长度的。
- 不管原始数据是什么样的,得到的哈希值都是固定长度的,也就是说摘要并不是原始数据加密后的密文,只是一个验证身份的令牌。所以我们无法通过摘要解密得到原始数据
- 常用摘要算法
- MD5
- SHA
- MAC
- 误解
- 可以通过对信息摘要这个加密结果进行解密得到原始数据。
加密
- 定义
- 加密是通过 “加密算法” 将 "明文" 加密成 “密文”。 我们可以通过 “密钥” 和 “解密算法” 将 “密文” 还原成 “明文”。
- 常见加密
- 对称加密:加密(encryption)与解密(decryption)
- 非对称加密:RSA