2023.10.25今天我学习了如何使用sm4进行加密解密:
注意:前端和后端的编码必须相同才能使用,不然会出现空字符串的错误。
一、首先安装sm4.js包:
npm i sm4js
package.json中的版本: (安装失败的话可以直接复制下面的版本然后npm install)
"dependencies": {"sm4js": "^0.0.6", },
二、main.js中全局引入或局部引入:
import Sm4js from 'sm4js' Vue.prototype.$sm4 = Sm4js
这个是全局引入的,在别的页面的话使用this.$sm4就能调用。
import Sm4js from 'sm4js' let sm4 = new Sm4js()
这个是局部引入。
三、使用:
<script>import Sm4js from 'sm4js';export default {name: 'color',...methods:{getKey(){let key = 'AwXOF5IRtHNuQuJX'let sm4Config = {key: key, // 密钥 前后端一致即可,后端提供,一般通过接口请求获取到mode: 'cbc', // 加密的方式有两种,ecb和cbc两种cipherType: 'base64'}let sm4 = new Sm4js(sm4Config)let text = '123456'// 对数据进行加密 encrypt - 加密方法let encrypted = sm4.encrypt(text)// 对数据进行解密 decrypt - 解密方法let decrypted = sm4.decrypt(encrypted )}}}
</script>