前言
尝试对进行网络传输的某些数据进行加密,防止敏感信息在数据传输过程中被恶意拦截或窃取。
- 选择了crypto-js这个库,跟随大部队的脚步吧..
- crypto-js - npm (npmjs.com)
使用 yarn 安装
yarn add crypto-js
使用 npm 安装
npm install crypto-js
如何使用?
注意:
encrypt(参数1,参数2),
参数1:要加密的数据,
参数2:密钥,密钥需与后端解密的密钥一致
前端:
- 若要加密的是纯文本
import CryptoJS from 'crypto-js';
const name = ref('csdn');
const encryptText = CryptoJS.AES.encrypt(name, 'secret key').toString();
- 若要加密的是对象(我现在的需求就是,下面有栗子)
import CryptoJS from 'crypto-js';
const encryptedData = CryptoJS.AES.encrypt(JSON.stringify(把要加密对象放这里), 'secret key').toString();
后端:(Node.js)
- 若要解密的是纯文本
const CryptoJS = require('crypto-js');
const decryptedBytes = CryptoJS.AES.decrypt(我这个位置写要解密的数据, 'secret key');
const decryptedData= decryptedBytes.toString(CryptoJS.enc.Utf8);
- 若要解密的是对象
const CryptoJS = require('crypto-js');
const decryptedBytes = CryptoJS.AES.decrypt(要解密的数据, 'secret key');
console.log(decryptedBytes, '===decryptedBytes');
const decryptedData = JSON.parse(decryptedBytes.toString(CryptoJS.enc.Utf8));
console.log(decryptedData, '***decryptedData');