微信小程序-数据加密

npm install crypto-js

utils/aes.js

复制代码
const CryptoJS = require('crypto-js');
 
// 默认的 KEY 与 iv 如果没有给
const KEY = CryptoJS.enc.Utf8.parse('KrQ4KAYOEyAz66RS'); // 十六位十六进制数作为密钥
const IV = CryptoJS.enc.Utf8.parse('ep1YCmxXuxKe4eH1'); // 十六位十六进制数作为密钥偏移量
 
/**
 * AES加密 :字符串 key iv  返回base64
 * 把默认的KEY 与 iv赋值给变量
 * 如果有keyStr 重新赋值密钥
 * 重新设置密钥偏移量
 */
function encrypted(word, keyStr, ivStr) {
  let key = KEY;
  let iv = IV;
 
  if (keyStr) {
    key = CryptoJS.enc.Utf8.parse(keyStr);
    iv = CryptoJS.enc.Utf8.parse(ivStr);
  }
  const srcs = CryptoJS.enc.Utf8.parse(word);
  const encrypted = CryptoJS.AES.encrypt(srcs, key, {
    iv, // 偏移量
    mode: CryptoJS.mode.CBC,
    padding: CryptoJS.pad.Pkcs7
  });
  return CryptoJS.enc.Base64.stringify(encrypted.ciphertext);
}
 
// 解密
function decrypted(word, keyStr, ivStr) {
  let key = KEY;
  let iv = IV;
 
  if (keyStr) {
    key = CryptoJS.enc.Utf8.parse(keyStr);
    iv = CryptoJS.enc.Utf8.parse(ivStr);
  }
  const base64 = CryptoJS.enc.Base64.parse(word);
  const src = CryptoJS.enc.Base64.stringify(base64);
  const decrypted = CryptoJS.AES.decrypt(src, key, {
    iv, // 偏移量
    mode: CryptoJS.mode.ECB,
    padding: CryptoJS.pad.Pkcs7
  });
 
  const decryptedStr = decrypted.toString(CryptoJS.enc.Utf8);
  return decryptedStr.toString();
}
module.exports = {
  encrypted,
  decrypted
};

页面应用

var aes = require('../../utils/aes.js');

数据加密:

var encrypt = aes.encrypted(Date.now()+'@'+app.globalData.id+'@'+'booking');

相关推荐
说私域10 小时前
链动2+1模式AI智能名片S2B2C商城小程序中电商直播的应用机制与价值创新研究
人工智能·小程序
虾..13 小时前
Linux 进程池小程序
linux·c++·小程序
Coder_Boy_14 小时前
【人工智能应用技术】-基础实战-小程序应用(基于springAI+百度语音技术)智能语音控制
人工智能·小程序
计算机毕设指导614 小时前
基于微信小程序的垃圾分类信息系统【源码文末联系】
java·spring boot·mysql·微信小程序·小程序·tomcat·maven
kaka-33315 小时前
微信小程序中使用 xlsx(xlsx.mini.min.js)实现 Excel 导入导出功能
javascript·微信小程序·excel
Coder_Boy_17 小时前
【人工智能应用技术】-基础实战-小程序应用(基于springAI+百度语音技术)智能语音控制-单片机交互
人工智能·单片机·小程序
Coder_Boy_18 小时前
【人工智能应用技术】-基础实战-小程序应用(基于springAI+百度语音技术)智能语音开关
人工智能·百度·小程序
说私域1 天前
基于开源AI智能名片链动2+1模式S2B2C商城小程序的社群初期运营策略研究
人工智能·小程序
计算机毕设指导62 天前
基于微信小程序的校园物品租赁与二手交易系统【源码文末联系】
spring boot·mysql·微信小程序·小程序·tomcat·maven·intellij-idea
科技小金龙2 天前
小程序/APP接入分账系统:4大核心注意事项,避开合规与技术坑
大数据·人工智能·小程序