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, '解密');
相关推荐
初一初十16 分钟前
vue3实现的纯前端护肤品商城网站
前端·javascript·vue.js·前端框架
卷帘依旧18 分钟前
React状态管理方案怎么选
前端
zeqinjie23 分钟前
Flutter 折叠屏 iPad / 宽屏适配实践
android·前端·flutter
小村儿40 分钟前
连载13- 内部Tools,Claude Code 怎么真正"动"你的代码
前端·后端·ai编程
IT_陈寒41 分钟前
Python的线程池把我坑惨了,原来异步不是万能的
前端·人工智能·后端
ANnianStriver1 小时前
PetLumina 07 — 宠物管理升级与 JavaScript 大数精度修复
开发语言·javascript·ai编程·宠物
初一初十1 小时前
vue3茶叶商城网站vue网页vuejs前端
前端·javascript·vue.js·vscode·前端框架
kyriewen2 小时前
前端性能优化:LCP 从 4s 到 0.9s 的 5 个核心手段(附配置代码)
前端·javascript·性能优化
xiaofeichaichai2 小时前
Proxy与Reflect
前端·javascript
小蜜蜂dry2 小时前
nestjs实战-权限二:角色模块
前端·后端·nestjs