sm-crypto库(实际应用的时候后端解不出来所以用的gm-crypt库)
npm install sm-crypto
sm2加密使用
const sm2_main = require('sm-crypto').sm2
let keypair = sm2_main.generateKeyPairHex("1233241343223423");
let publicKey = keypair.publicKey;
let privateKey = keypair.privateKey;
const cipherMode = 0;
function doEncrypt(msg){
return sm2_main.doEncrypt(msg, publicKey, cipherMode);
}
function doDecrypt(encryptData){
return sm2_main.doDecrypt(msg, privateKey, cipherMode);
}
let encrypt=doEncrypt("123456", publicKey, cipherMode);
let decrypt=doDecrypt(encrypt);
console.log(encrypt);
console.log(decrypt);
gm-crypt库
npm install gm-crypt
sm4加密使用
const SM4 = require("gm-crypt").sm4;
export default function (params) {
if(typeof (params) == 'undefined'){
params = null;
}
let sm4Config = {
key: "kshop@ykshop.com",
mode: "cbc",
iv:"kshop@ykshop.com",
cipherType: "base64"
};
let sm4 = new SM4(sm4Config);
let encryptData = sm4.encrypt(params);
return encryptData.trim();
}