当前位置:网站首页>crypto-js uses
crypto-js uses
2022-08-01 05:50:00 【no water in the sea】
crypto-js使用 :
const cryptoJs = require('crypto-js')
function getKey(key = "1234123412341234") {
return cryptoJs
.SHA1(cryptoJs.SHA1(key))
.toString()
.substring(0, 32);
}
function aesEncrypt(data, key) {
console.log('加密之前的data:', data+' key:'+ key + ' 真实的key:'+ getKey(key));
const KEY = cryptoJs.enc.Hex.parse(getKey(key));
const IV = cryptoJs.enc.Hex.parse(getKey(key));
if (typeof data === "object") {
try {
data = JSON.stringify(data);
} catch (error) {
console.log("加密失败:", error);
}
}
let encrypt = cryptoJs.AES.encrypt(
data,
KEY,
{
iv: IV,
mode: cryptoJs.mode.ECB,
padding: cryptoJs.pad.Pkcs7
}
);
console.log("加密之后的数据:", encrypt.ciphertext.toString());
return encrypt.ciphertext.toString();
}
function aesDecrypt(data, key) {
console.log('解密之前的data:', data+' key:'+ key + ' 真实的key:'+ getKey(key));
const KEY = cryptoJs.enc.Hex.parse(getKey(key));
const IV = cryptoJs.enc.Hex.parse(getKey(key));
let str = cryptoJs.enc.Base64.stringify(cryptoJs.enc.Hex.parse(data));
let decrypt = cryptoJs.AES.decrypt(
str,
KEY,
{
iv: IV,
mode: cryptoJs.mode.ECB,
padding: cryptoJs.pad.Pkcs7
}
);
console.log('解密后的数据:', decrypt.toString(cryptoJs.enc.Utf8).toString())
return decrypt.toString(cryptoJs.enc.Utf8);
}
let obj = {
name: '狠人大帝'
}
let a = aesEncrypt(obj, '45674567456745674567')
console.log('加密后的a====', a);
let a1 = aesDecrypt(a, '45674567456745674567')
console.log('解密后的a1', a1)
// export { aesEncrypt, aesDecrypt };

边栏推荐
猜你喜欢
随机推荐
安装SQL Server详细教程
How JS works
小白的0基础教程SQL: 关系数据库概述 02
Selenium: upload and download files
Selenium:简介
【视觉SLAM十四讲】第一章理论详解
牛客多校2022第四场A,H,K,N
Selenium:上传、下载文件
weight distribution
【MySQL必知必会】 表的优化 | 充分利用系统资源
ORACLE 实现另外一个用户修改包(package)
matplotlib pyplot
从离线到实时对客,湖仓一体释放全量数据价值
「面经分享」西北大学 | 字节 生活服务 | 一面二面三面 HR 面
Sound Signal Processing Fundamental Frequency Detection and Time-Frequency Analysis
NDK does not contain any platforms问题解决
AspNet.WebApi.Owin custom Token request parameters
matplotlib pyplot
After the image is updated, Glide loading is still the original image problem
AspNet.WebApi.Owin 自定义Token请求参数









