AES加解密

// js 代码块

1.	crypto-js 是一个纯 javascript 写的加密算法类库 ,可以非常方便地在 javascript 进行 MD5、SHA1、SHA2、SHA3、RIPEMD-160 哈希散列,进行 AES、DES、Rabbit、RC4、Triple DES 加解密,我们可以采用 npm install crypto-js --save 进行下载安装
		
 2. 安装插件   npm install crypto-js
 3. import CryptoJS from "crypto-js";
	
	//  十六位十六进制数作为秘钥
	  let key = "9CF181E2CD72F8E6"; //CryptoJS.enc.Utf8.parse();
	//  十六位十六进制数作为秘钥偏移量
  	let iv = CryptoJS.enc.Utf8.parse("6666666666666666");
     //    加密
	  Encrypt(content) {
	    var sKey = CryptoJS.enc.Utf8.parse(key);
	    var sContent = CryptoJS.enc.Utf8.parse(content);
	    var encrypted = CryptoJS.AES.encrypt(sContent, sKey, {
	      iv: iv,
	      mode: CryptoJS.mode.ECB,
	      padding: CryptoJS.pad.Pkcs7
	    });
	    return encrypted.toString();
	  },
      //   解密
	  Decrypt(content) {
	    var sKey = CryptoJS.enc.Utf8.parse(key);
	    var decrypt = CryptoJS.AES.decrypt(content, sKey, {
	      iv: iv,
	      mode: CryptoJS.mode.ECB,
	      padding: CryptoJS.pad.Pkcs7
	    });
	    return CryptoJS.enc.Utf8.stringify(decrypt).toString();
	  },
	上面的代码中的 key 是密钥 ,iv 是密钥偏移量,这个一般是接口返回的,为了方便,我们这里就直接在这里定义了。
	
	值得注意的是密钥的长度,由于对称解密使用的算法是 AES-128-CBC算法,数据采用 PKCS#7 填充 , 因此这里的 key 需要为16位!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值