如下方法:
export function encrypt(str) {
const sm2 = require("sm-crypto").sm2;
const cipherMode = 1; // 1 - C1C3C2,0 - C1C2C3,默认为1
//自定义密钥
let publicKey = "xxxxxxxx";
//此处加密
let a = sm2.doEncrypt(str, publicKey, cipherMode);
//解密
// var b=sm2.doDecrypt(a,privateKey,cipherMode) // 解密结果
return a;
}
注意:如果此时的str为数字类型时,正常会解密失败。故需要先保证str为字符串类型,也可以在方法里强制转为字符串。
查看源码可知,如果不是字符串走的不一样: