SM2加密简介
SM2是中国密码学算法标准中的一种非对称加密算法,它是由国家密码管理局(中国密码局)发布的一种椭圆曲线公钥密码算法。SM2基于椭圆曲线离散对数问题,主要用于数字签名、密钥交换和加密等密码学应用。
在系统开发中,后端需要生成私钥和公钥。公钥传给前端,私钥后端保存好。前端用公钥加密成功后传给后端,后端拿着保存的私钥把前端加密好的数据解密出来。
安装sm-crypto插件
npm i sm-crypto
实现sm2加密方法
import {sm2} from 'sm-crypto'
/**
* @param {string} str 需要加密的字符串
* @param {string} publicKey 加密公钥(一般需要后端传输给前端)
*/
function encodeSM2(str,publicKey){
let encryptData=sm2.doEncrypt(str,publicKey)
return encr