uniapp AES 加密解密

1. uniapp AES 加密解密

1.1. 引入crypto-js

需要在uniapp项目根目录里,打开命令行,执行如下命令:

javascript 复制代码
npm install crypto-js

1.2. 在项目根目录,创建一个utils文件夹,并创建一个aesEndecryptHelper.js文件

javascript 复制代码
import CryptoJS from 'crypto-js';
let ivStr = 'yyuuide45678'; // 矢量
let keyStr = "kexieapp@M2JXU1N"// 加密密钥
/**
 * AES加解密工具类
 */

/**
 * 加密
 */
const aes_encrypt = (word) => {
    keyStr = keyStr ? keyStr : 'sabcderw7894';
    var key  = CryptoJS.enc.Utf8.parse(keyStr);
    var srcs = CryptoJS.enc.Utf8.parse(word);
    var encrypted = CryptoJS.AES.encrypt(srcs, key,
        {mode:CryptoJS.mode.ECB,padding: CryptoJS.pad.Pkcs7});
    return encrypted.toString();
};


/**
 * 解密
 */
const aes_decrypt = (word) => {
    console.log('===decryptword===',word);
    keyStr = keyStr ? keyStr : 'sabcderw7894';
    var key  = CryptoJS.enc.Utf8.parse(keyStr);//
    var decrypt = CryptoJS.AES.decrypt(word, key,
        {mode:CryptoJS.mode.ECB,padding: CryptoJS.pad.Pkcs7});
    return CryptoJS.enc.Utf8.stringify(decrypt).toString();
};

export default {
    aes_encrypt: aes_encrypt,
    aes_decrypt: aes_decrypt,
}

1.3. 在项目根目录,创建一个utils文件夹,并创建一个aesEndecryptHelper.js文件

javascript 复制代码
<template>
  <view>
    <view class="">加密:{{encrypt_str}}</view>
    <view class="">解密:{{decrypt_str}}</view>
  </view>
</template>

<script>
import aesEndecryptHelper from '../../../helper/aesEndecryptHelper.js';
export default {

  data() {
    return {
      str: 'Hello123',
      encrypt_str: '',
      decrypt_str: '',
    }
  },
  mounted() {

    let encrypt_str = aesEndecryptHelper.aes_encrypt("123456");
    let decrypt_str = aesEndecryptHelper.aes_decrypt(encrypt_str);
    this.encrypt_str=encrypt_str;
    this.decrypt_str=decrypt_str;
  },
  methods: {

  }
}
</script>
相关推荐
持梦远方2 小时前
【C++日志库】启程者团队开源:轻量级高性能VoyLog日志库完全指南
开发语言·c++·visual studio
聪明努力的积极向上2 小时前
【C#】HTTP中URL编码方式解析
开发语言·http·c#
玖月晴空2 小时前
Uniapp 速查文档
前端·微信小程序·uni-app
嵌入式-老费2 小时前
自己动手写深度学习框架(快速学习python和关联库)
开发语言·python·学习
ctgu902 小时前
PyQt5(八):ui设置为可以手动随意拉伸功能
开发语言·qt·ui
CVer儿2 小时前
libtorch ITK 部署 nnUNetV2 模型
开发语言
asyxchenchong8882 小时前
OpenLCA、GREET、R语言的生命周期评价方法、模型构建
开发语言·r语言
没有梦想的咸鱼185-1037-16633 小时前
【生命周期评价(LCA)】基于OpenLCA、GREET、R语言的生命周期评价方法、模型构建
开发语言·数据分析·r语言
2501_915918413 小时前
App 上架苹果商店全流程详解 从开发者账号申请到开心上架(Appuploader)跨平台免 Mac 上传实战指南
macos·ios·小程序·uni-app·objective-c·cocoa·iphone
程序猿20233 小时前
Python每日一练---第三天:删除有序数组中的重复项
开发语言·python