欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

前端使用crypto.js進(jìn)行加密的函數(shù)代碼

 更新時(shí)間:2020年08月16日 00:19:02   作者:OverZeal  
最近在使用Cookies加密保存數(shù)據(jù)的時(shí)候,接觸到crypto,使用還算簡(jiǎn)單,在這里記錄一下

crypto-js 是一個(gè)純 javascript 寫(xiě)的加密算法類庫(kù) ,可以非常方便地在 javascript 進(jìn)行 MD5、SHA1、SHA2、SHA3、RIPEMD-160 哈希散列,進(jìn)行 AES、DES、Rabbit、RC4、Triple DES 加解密。

可以在這個(gè)GitHub的https://github.com/brix/crypto-js上下載該js,它可以單獨(dú)引入所需要加密方式的js;也可以引入一個(gè)crypto-js.js 這個(gè)文件,它相當(dāng)于引入了所有的加密方式,我使用的就是后者一次引入所有的加密文件,這個(gè)文件也不是很大,還可以接受。

因?yàn)槲业男枨笫羌用芸赡?,具有一定的安全?對(duì)安全性要求不高),所以使用DES或AES即可,我用的是AES:

function getAesString(data,key,iv){//加密
  var key = CryptoJS.enc.Utf8.parse(key);
  var iv  = CryptoJS.enc.Utf8.parse(iv);
  var encrypted =CryptoJS.AES.encrypt(data,key,
    {
      iv:iv,
      mode:CryptoJS.mode.CBC,
      padding:CryptoJS.pad.Pkcs7
    });
  return encrypted.toString();  //返回的是base64格式的密文
}
function getDAesString(encrypted,key,iv){//解密
  var key = CryptoJS.enc.Utf8.parse(key);
  var iv  = CryptoJS.enc.Utf8.parse(iv);
  var decrypted =CryptoJS.AES.decrypt(encrypted,key,
    {
      iv:iv,
      mode:CryptoJS.mode.CBC,
      padding:CryptoJS.pad.Pkcs7
    });
  return decrypted.toString(CryptoJS.enc.Utf8);   
}

function getAES(data){ //加密
  var key = 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA'; //密鑰
  var iv  = '1234567812345678';
  var encrypted =getAesString(data,key,iv); //密文
  var encrypted1 =CryptoJS.enc.Utf8.parse(encrypted);
  return encrypted;
}

function getDAes(data){//解密
  var key = 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA'; //密鑰
  var iv  = '1234567812345678';
  var decryptedStr =getDAesString(data,key,iv);
  return decryptedStr;
}

key和iv我們都可以更換,但是需要保證的是加解密的key和iv保持一致

到此這篇關(guān)于前端使用crypto.js進(jìn)行加密的函數(shù)代碼的文章就介紹到這了,更多相關(guān)crypto.js加密內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論