js sm4实现加密解密

2023.10.25今天我学习了如何使用sm4进行加密解密:

注意:前端和后端的编码必须相同才能使用,不然会出现空字符串的错误。

一、首先安装sm4.js包:

npm i sm4js

package.json中的版本: (安装失败的话可以直接复制下面的版本然后npm install)

"dependencies": {
  "sm4js": "^0.0.6",
},

二、main.js中全局引入或局部引入:

  1. import Sm4js from 'sm4js' 
  2. Vue.prototype.$sm4 = Sm4js

这个是全局引入的,在别的页面的话使用this.$sm4就能调用。

  1. import Sm4js from 'sm4js' 
  2. let sm4 = new Sm4js()

这个是局部引入。

三、使用:

  1. <script>
  2. import Sm4js from 'sm4js';
  3. export default {
  4. name: 'color',
  5. ...
  6. methods:{
  7. getKey(){
  8. let key = 'AwXOF5IRtHNuQuJX'
  9. let sm4Config = {
  10. key: key, // 密钥 前后端一致即可,后端提供,一般通过接口请求获取到
  11. mode: 'cbc', // 加密的方式有两种,ecb和cbc两种
  12. cipherType: 'base64'
  13. }
  14. let sm4 = new Sm4js(sm4Config)
  15. let text = '123456'
  16. // 对数据进行加密 encrypt - 加密方法
  17. let encrypted = sm4.encrypt(text)
  18. // 对数据进行解密 decrypt - 解密方法
  19. let decrypted = sm4.decrypt(encrypted )
  20. }
  21. }
  22. }
  23. </script>

转载:
爬虫逆向学习(四):python与Javascript方式处理常见加解密_js sm4加密_九月镇灵将的博客-CSDN博客