vue sm2加密解密

1.安装依赖

npm install --save sm-crypto

 2.使用方法

 新建js文件 导出加解密方法 直接调用即可

//sm2加密
export function doEncrypt(msgString) {
  let msg = msgString
  if (typeof msgString !== 'string') {
    msg = JSON.stringify(msgString)
  }
  let sm2 = require('sm-crypto').sm2
  let Base64 = require('js-base64').Base64
  // 1 - C1C3C2;	0 - C1C2C3;	默认为1
  let cipherMode = 1
  let publicKey2 = '你的公钥'
  // 加密结果
  let encryptData = sm2.doEncrypt(msg, publicKey2, cipherMode)
  //Base64编码 自行选择是否使用
  //let baseEncode = Base64.encode(encryptData)
  // 加密后的密文前需要添加04,后端才能正常解密 (不添加04,后端处理也可以)
  let encrypt = '04' + encryptData
  return encrypt
}

// 解密
 export function doDecryptStr(enStr) {
   let msg = enStr
   if (typeof enStr !== 'string') {
     msg = JSON.stringify(enStr)
  }
   let sm2 = require('sm-crypto').sm2
   // 1 - C1C3C2;	0 - C1C2C3;  默认为1
   let cipherMode = 1
   let privateKey1 = '你的私钥'
   let enval = enStr.substring(2)
   // 解密结果
   let doDecrypt = sm2.doDecrypt(enval , privateKey1, cipherMode)
   // 解密后类型转换
   let objData = JSON.parse(doDecrypt)
   return objData
 }

  https://www.npmjs.com/package/sm-crypto

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值