前端JavaSjcript进行数据MD5、AES、DES、RC4、BASE64、SHA1、Rabbit、TripleDES、HmacSHA1、SHA224、SHA256、SHA384、SHA512加密

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)

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值