最近做的项目涉及到了登陆密码加密,整理几种加密的方式:
1. rsa加密方式
首先引入一下js文件,路径根据实际情况自行修改:
然后初始化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加密方式
引入文件:
使用方式:pidCrypt.MD5(value);
3. Sha256加密方式
引入文件:
使用方式:pidCrypt.SHA256(value);
总体而言,rsa加密会比其他两种方式复杂,需要注意的是,rsa在初始化时一定要先赋给它一个公钥。