最近在做几个项目和银行相关的,用的加密方式是Rsa,但是发现网上找的一些库都是没办法用,不然就是会报错,所以我这边特地整理一个完整的库以及加密的使用方式介绍一下。
Rsa的初始化以及使用方式
首先是引入下面几个js,对应的文件路径自己改,文件下载的地址我会在底部给出链接。
<load href="/Public/js/pidcrypt.js" />
<load href="/Public/js/pidcrypt_util.js" />
<load href="/Public/js/asn1.js" />
<load href="/Public/js/jsbn.js" />
<load href="/Public/js/rng.js" />
<load href="/Public/js/prng4.js" />
<load href="/Public/js/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变量。
- Md5的加密以及使用方式
先引入以下JS
<load href="/Public/js/pidcrypt.js" />
<load href="/Public/js/md5.js" />
使用方式:
pidCrypt.MD5(value); value代表是你要加密的字段Sha256的加密以及使用方式
-
先引入以下JS
<load href="/Public/js/pidcrypt.js" />
<load href="/Public/js/sha256.js" />
使用方式:
pidCrypt.SHA256(value); value代表是你要加密的字段;
上面就是前端加密的几种方式,Rsa的会比较复杂,Rsa初始化的时候需要给它一个公钥,千万要记得!
文件打包下载链接:js下载