react项目中使用DES 3DES加密算法

1、安装crypto-js

npm install crypto-js --save

2、封装加密解密函数,写入文件 3DES.ts 文件。这里示例用 utf8 字符集、 CBC 加密模式、Pkcs7 的填充方式、base64 的编码格式输出,此模式需要前后端共同约定密码和偏移量,两者需要完全一致。

import cryptoJs from 'crypto-js';
 
const _key = 'cmbdcrzapi1a2b3c4d5e6f7g';  // 密码
const _iv = '20240325'; // 偏移量

// 3DES 加密
export const encryptByDES = (dataStr, key=_key, iv=_iv) => {
  const keyHex = cryptoJs.enc.Utf8.parse(key);
  const encrypted = cryptoJs.TripleDES.encrypt(dataStr, keyHex, {
    mode: cryptoJs.mode.CBC, // CBC模式
    padding: cryptoJs.pad.Pkcs7, // pkcs7padding 填充方式
    iv: cryptoJs.enc.Utf8.parse(iv), // 设置偏移量(若 ECB 模式则删除该行),CBC模式需设置iv偏移量
  });
  // return encrypted.ciphertext.toString(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值