昨天做了登陆模块,接触了md5&RSA加密。有点意思,talk is cheap,show me the code!
前端加密
- 为什么要加密
- 前端加密的方式
- 后台如何解密
1 为什么要加密?
很简单,防止密码明文传输。 如不做加密的话,在控制台是可以直接查看到账密传参的,毫无安全性可言。
2 前端加密的方式?
2.0 哈希算法与加密
上图中我们可以明显看到哈希和加密是两个不同的东西,主要有两点不同:
哈希算法通常用于数据摘要,生成相同长度的文本。而加密算法生成的密文长度与明文长度有关。
哈希算法是不可逆的,而加密算法是可逆的。
在加密算法中又分为对称加密(symmetric encryption)和非对称加密(asymmetric encryption)。非对称加密算法中,加密密钥和解密密钥是不同的,分为私钥和公钥,我们熟知的 RSA 就是一种非对称加密算法。而对称加密中,加密和解密都是用同一个密钥,如 AES / DES。从性能上来说,非对称加密相对于对称加密要慢很多。
在 HTTPS 中,认证过程使用了非对称加密算法,非认证过程中使用了对称加密算法。
2.1 md5方式
2.2 RSA方式
什么是RSA
如何使用RSA