☰
【Electron 2】electron调用crytojs加密
2026/10/11 4:18:38 网站建设 项目流程

安装

yarn add crypto-js

引入

const cryptojs = require('crypto-js');

传入字符串的直接加密形式

let aesData = { iv: cryptojs.enc.Utf8.parse('xxxx-xxxxx-xxxxx'), mode: cryptojs.mode.CBC, padding: cryptojs.pad.Pkcs7 } /** * 加密 */ export const encrypt = ({key, value}: {key: string, value: string}) => { const encrypted = cryptojs.AES.encrypt(value, key, aesData) // return encrypted.toString(cryptojs.enc.Base64); return encrypted.toString() } /** * 解密 */ export const decrypt = ({value, key} : {value: string, key: string}) => { const encryptedHexStr = cryptojs.enc.Base64.parse(value); const srcs = cryptojs.enc.Base64.stringify(encryptedHexStr); const decrypt = cryptojs.AES.decrypt(srcs, key, aesData); const decryptedStr = decrypt.toString(cryptojs.enc.Utf8); return decryptedStr }

转utf8的加密形式

/** * 加密 */ export const encrypt = ({key, value}: {key: string, value: string}) => { let keyStr = CryptoJS.enc.Utf8.parse(key); let srcs = CryptoJS.enc.Utf8.parse(value); let encrypted = CryptoJS.AES.encrypt(srcs, keyStr, aesData); return encrypted.toString(); } /** * 解密 */ export const decrypt = ({value, key} : {value: string, key: string}) => { var keyStr = CryptoJS.enc.Utf8.parse(key); var decrypt = CryptoJS.AES.decrypt(value, keyStr, aesData); return decrypt.toString(CryptoJS.enc.Utf8); }

注:在加解密中,我们需要配合后端一起去调整加解密的形式,否则我们前端调整好了,在实际接口调用中并不适用,除非你走了狗屎,查到的加解密使用博客和后端查的是同一个。

参考:
维维ww博客园
AES在线加解密测试
node官网

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询