前端密码加密的几种方式整理
最近做的项目涉及到了登陆密码加密,整理几种加密的方式:
1. rsa加密方式
首先引入一下js文件,路径根据实际情况自行修改:
<script src="../pidcrypt.js"></script>
<script src="../pidcrypt_util.js"></script>
<script src="../asn1.js"></script>
<script src="../jsbn.js"></script>
<script src="../rng.js"></script>
<script src="../prng4.js></script>
<script src="../rsa.js"></script>然后初始化rsa:
var pubKey = '{$pubKey}';
var keyParams = certParser(pubKey);
var key = pidCryptUtil.decodeBase64(keyParams.b64);
var rsa = new pidCrypt.RSA();
var asn = pidCrypt.ASN1.decode(pidCryptUtil.toByteArray(key));
var tree = asn.toHexTree();
rsa.setPublicKeyFromASN(tree);使用方式:encryptBase64(value, rsa);value代表要加密的值,rsa是前面初始化好的rsa变量。
2. Md5加密方式
引入文件:
<script src="../pidcrypt.js"></script>
<script src="../md5.js"></script>使用方式:pidCrypt.MD5(value);
3. Sha256加密方式
引入文件:
<script src="../pidcrypt.js"></script>
<script src="../sha256.js"></script>使用方式:pidCrypt.SHA256(value);
总体而言,rsa加密会比其他两种方式复杂,需要注意的是,rsa在初始化时一定要先赋给它一个公钥。
原文来自:https://segmentfault.com/a/1190000019164592
本文内容仅供个人学习/研究/参考使用,不构成任何决策建议或专业指导。分享/转载时请标明原文来源,同时请勿将内容用于商业售卖、虚假宣传等非学习用途哦~感谢您的理解与支持!