// 加密
export const encryptionTxt = (plaintext) => {
if (!plaintext) { // 空值判断, 避免空值阻塞代码
return ''
}
if (typeof plaintext !== 'string') {// 加密内容必须为字符串
plaintext = String(plaintext)
}
// 从环境变量中拿密匙
const mikey = process.env.REACT_APP_API_KEY
const key = CryptoJS.enc.Utf8.parse(mikey)
// 使用AES加密 (ECB模式)
const encrypted = CryptoJS.AES.encrypt(plaintext, key, {
mode: CryptoJS.mode.ECB, // ECB加密模式
padding: CryptoJS.pad.Pkcs7, // 填充方式,常用Pkcs7
})
// 将加密后的数据转换为16进制字符串
const encryptedHexStr = encrypted.ciphertext.toString(CryptoJS.enc.Hex)
// 打印加密后的16进制字符串
return encryptedHexStr
}
相关文章
- 【react使用AES对称加密的实现】-加密方法
- Spring Boot中使用MyBatis-Plus和MyBatis拦截器来实现对带有特定注解的字段进行AES加密。
- 基于MbedTLS的AES加密实现,含STM32H7和STM32F4的实现例程
- AES加密 对应的 C#/JAVA 方法
- .net 反射访问私有变量和私有方法 如何创建C# Closure ? C# 批量生成随机密码,必须包含数字和字母,并用加密算法加密 C#中的foreach和yield 数组为什么可以使用linq查询 C#中的 具名参数 和 可选参数 显示实现接口 异步CTP(Async CTP)为什么那样工作? C#多线程基础,适合新手了解 C#加快Bitmap的访问速度 C#实现对图片文件的压
- 任何国家都无法限制数字货币。为什么呢? 要想明白这个问题需要具备一点区块链的基础知识: 区块链使用的大致技术包括以下几种: a.点对点网络设计 b.加密技术应用 c.分布式算法的实现 d.数据存储技术 e.拜占庭算法 f.权益证明POW,POS,DPOS 原因一: 点对点网络设计 其中点对点的P2P网络是bittorent ,由于是点对点的网络,没有中心化,因此在全球分布式的网
- Java使用Cipher类实现加密,包括DES,DES3,AES和RSA加密
- RSA AES 前端JS与后台JAVA的加密解密的是实现
- 基于MFC实现的AES加密解密程序
- C# 与JAVA 的RSA 加密解密交互,互通,C#使用BouncyCastle来实现私钥加密,公钥解密的方法