1.安装sm2
npm install --save sm-crypto
2.加密:
const sm2 = require('sm-crypto').sm2
const cipherMode = 1 ;// 1 - C1C3C2,0 - C1C2C3,默认为1
const publicKey = "04fffce60f2a91ac4c4bcc3aaf5a06b7d8eef2ea2d4ddf22bfb5137006307185234f8a61e671446c110e9f12d81d1f54d2fd1407d51ba422bc9c96d50889ce6730"
let txt='123456' //要加密的字段
let encryptData = sm2.doEncrypt(txt, publicKey, cipherMode ) // 加密结果
return '04' + encryptData;
一般需要在结果前添加04返回
3.解密
const sm2 = require('sm-crypto').sm2
let needval = val.substring(2)//val是后台传过来的加密字段,将其前边的‘04’截取掉
var privceKey="5bb255375e9ce5f7f8215641b53edbd58bdfd383c60480b41df5c16a152a921d"
const cipherMode = 1 // 1 - C1C3C2,0 - C1C2C3,默认为1
let decryptData = sm2.doDecrypt(needval, privceKey, cipherMode) // 解密结果
return decryptData;
注意:上述的publicKey 和 privceKey 必须为互相对应的秘钥
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)