CryptoJS的安装
1、使用npm安装
npm install crypto-js
2、页面中引入 crypto-js 编写加密解密代码
<script setup>
import CryptoJS from "crypto-js";
let test= () => {
var encryptResult=encrypt("AES","www.xgjzx.cn","xgjzx")
console.log("加密后:"+encryptResult)
var decryptResult=decrypt("AES",encryptResult,"xgjzx")
console.log("解密后:"+decryptResult)
}
//加密 1.unit 加密方式 2.source 加密数据 3.pwd 自定义密码
let encrypt = (unit,source,pwd) => {
var result;
switch (unit) {
case "SHA1":
result=CryptoJS.SHA1(source);
break;
case "SHA224":
result=CryptoJS.SHA224(source);
break;
case "SHA256":
result=CryptoJS.SHA256(source);
break;
case "SHA384":
result=CryptoJS.SHA384(source);
break;
case "SHA512":
result=CryptoJS.SHA512(source);
break;
case "MD5":
result=CryptoJS.MD5(source);
break;
case "HmacSHA1":
result=CryptoJS.HmacSHA1(source,pwd);
break;
case "HmacSHA224":
result=CryptoJS.HmacSHA224(source,pwd);
break;
case "HmacSHA256":
result=CryptoJS.HmacSHA256(source,pwd);
break;
case "HmacSHA384":
result=CryptoJS.HmacSHA384(source,pwd);
break;
case "HmacSHA512":
result=CryptoJS.HmacSHA512(source,pwd);
break;
case "HmacMD5":
result=CryptoJS.HmacMD5(source,pwd);
break;
case "BASE64":
var data = CryptoJS.enc.Utf8.parse(source);
result=CryptoJS.enc.Base64.stringify(data);
break;
case "AES":
result=CryptoJS.AES.encrypt(source,pwd);
break;
case "DES":
result=CryptoJS.DES.encrypt(source,pwd);
break;
case "Rabbit":
result=CryptoJS.Rabbit.encrypt(source,pwd);
break;
case "RC4":
result=CryptoJS.RC4.encrypt(source,pwd);
break;
case "TripleDES":
result=CryptoJS.TripleDES.encrypt(source,pwd);
break;
}
return result;
}
//解密 1.unit 解密方式 2.source 加密数据 3.pwd 自定义密码
let decrypt = (unit,source,pwd) => {
var result;
switch (unit) {
case "BASE64":
result=CryptoJS.enc.Base64.parse(source).toString(CryptoJS.enc.Utf8);
break;
case "AES":
result=CryptoJS.AES.decrypt(source,pwd).toString(CryptoJS.enc.Utf8);
break;
case "DES":
result=CryptoJS.DES.decrypt(source,pwd).toString(CryptoJS.enc.Utf8);
break;
case "Rabbit":
result=CryptoJS.Rabbit.decrypt(source,pwd).toString(CryptoJS.enc.Utf8);
break;
case "RC4":
result=CryptoJS.RC4.decrypt(source,pwd).toString(CryptoJS.enc.Utf8);
break;
case "TripleDES":
result=CryptoJS.TripleDES.decrypt(source,pwd).toString(CryptoJS.enc.Utf8);
break;
}
return result;
}
</script>
功能实现页面效果: 数据加密解密-小工具在线(xgjzx.cn)