uniapp使用sm4加密

安装:npm install sm-crypto --save

1、在utils下新建crypto.js文件

javascript 复制代码
// sm4 加密
export function encryption(params) {
	const SM4 = require("sm-crypto").sm4
	const key = '0123456789abcdeffedcba9876543212'; // 提供的密钥
	const iv = 'fedcba98765432100123456789abcdaf'; // 提供的IV
	const config = {
		key: key, // 密钥
		mode: 'cbc', // 加密模式
		iv: iv // 初始化向量
	};
	return SM4.encrypt(params,key,iv);
}

// sm4 解密
export function decryption(params) {
	const SM4 = require("sm-crypto").sm4
	const key = '0123456789abcdeffedcba9876543212'; // 提供的密钥
	const iv = 'fedcba98765432100123456789abcdaf'; // 提供的IV
	return SM4.decrypt(params,key,iv); // 第一个参数是加密数据的编码,第二个参数是输出编码
}

2、在页面引入

javascript 复制代码
    import {
        encryption,
        decryption
    } from "@/utils/crypto.js";

3、使用

javascript 复制代码
//加密
let param = encryption('xxxxxx')
console.log(param, '加密');
//解密
let param = decryption('xxxxxx')
console.log(param, '解密');
相关推荐
bubusa~>_<3 分钟前
解决npm install 出现error,比如:ERR_SSL_CIPHER_OPERATION_FAILED
前端·npm·node.js
[廾匸]29 分钟前
cesium视频投影
javascript·无人机·cesium·cesium.js·视频投影
流烟默1 小时前
vue和微信小程序处理markdown格式数据
前端·vue.js·微信小程序
梨落秋溪、1 小时前
输入框元素覆盖冲突
java·服务器·前端
菲力蒲LY1 小时前
vue 手写分页
前端·javascript·vue.js
一丢丢@zml1 小时前
new 一个构造函数的过程以及手写 new
javascript·手写new
天下皆白_唯我独黑2 小时前
npm 安装扩展遇到证书失效解决方案
前端·npm·node.js
~欸嘿2 小时前
Could not download npm for node v14.21.3(nvm无法下载节点v14.21.3的npm)
前端·npm·node.js
化作繁星2 小时前
React 高阶组件的优缺点
前端·javascript·react.js
zpjing~.~3 小时前
vue 父组件和子组件中v-model和props的使用和区别
前端·javascript·vue.js