前端sm2国密加密时注意
如下方法:
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为字符串类型,也可以在方法里强制转为字符串。
查看源码可知,如果不是字符串走的不一样:
原文地址:https://blog.csdn.net/z858466/article/details/142528886
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!