日本阿v片在线播放免费,成人国产片视频在线观看,日韩黄片毛片在线观看,一区亚洲电影,琪琪秋霞午夜av影视在线,中文字幕在线视频不卡,最新大伊香蕉精品视频在线,亚洲AV无码日韩一区二区乱

      vue AES加密(超詳細(xì))

      2021-5-27    前端達(dá)人

      第一步:

      
      
      1. //安裝
      2. npm install crypto-js --save-dev

      第二步:在src目錄下新建個放公用js文件夾(common),再建一個AES.js文件,例如:

      第三步:在AES.js中填寫如下代碼,key密鑰長度則可以是128,192或256位(默認(rèn)情況下是128位),正常情況下固定16位數(shù)即可

       
      
      1. import CryptoJS from 'crypto-js';
      2. export default {
      3. //隨機生成指定數(shù)量的16進(jìn)制key
      4. generatekey(num) {
      5. let library = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
      6. let key = "";
      7. for (var i = 0; i < num; i++) {
      8. let randomPoz = Math.floor(Math.random() * library.length);
      9. key += library.substring(randomPoz, randomPoz + 1);
      10. }
      11. return key;
      12. },
      13. //加密
      14. encrypt(word, keyStr) {
      15. keyStr = keyStr ? keyStr : 'abcdsxyzhkj12345'; //判斷是否存在ksy,不存在就用定義好的key
      16. var key = CryptoJS.enc.Utf8.parse(keyStr);
      17. var srcs = CryptoJS.enc.Utf8.parse(word);
      18. var encrypted = CryptoJS.AES.encrypt(srcs, key, { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 });
      19. return encrypted.toString();
      20. },
      21. //解密
      22. decrypt(word, keyStr) {
      23. keyStr = keyStr ? keyStr : 'abcdsxyzhkj12345';
      24. var key = CryptoJS.enc.Utf8.parse(keyStr);
      25. var decrypt = CryptoJS.AES.decrypt(word, key, { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 });
      26. return CryptoJS.enc.Utf8.stringify(decrypt).toString();
      27. }
      28. }

      第四步:在需要的地方引入

      import AES from "@/common/AES.js";

      第五步:調(diào)用

       
      
      1. // var keys = AES.generatekey(16);
      2. //如果是對象/數(shù)組的話,需要先JSON.stringify轉(zhuǎn)換成字符串
      3. // 不傳key值,就默認(rèn)使用上述定義好的key值
      4. var encrypts = AES.encrypt(JSON.stringify(cars));
      5. var dess = JSON.parse(AES.decrypt(encrypts));
      6. // var encrypts = AES.encrypt('1234asdasd');
      7. // var dess = AES.decrypt(encrypts);
      8. console.log(encrypts)
      9. console.log(encrypts.length)
      10. console.log(dess)

       

       

      特別提示:當(dāng)解密的時候是為空的時候(也沒有報錯),那么就一定是你的key長度不符合規(guī)范, 可以調(diào)整為key長度為16位。

       


      藍(lán)藍(lán)設(shè)計建立了UI設(shè)計分享群,每天會分享國內(nèi)外的一些優(yōu)秀設(shè)計,如果有興趣的話,可以進(jìn)入一起成長學(xué)習(xí),請掃碼藍(lán)小助,報下信息,藍(lán)小助會請您入群。歡迎您加入噢~~希望得到建議咨詢、商務(wù)合作,也請與我們聯(lián)系。

      截屏2021-05-13 上午11.41.03.png


      文章來源:csdn   

      分享此文一切功德,皆悉回向給文章原作者及眾讀者.

      免責(zé)聲明:藍(lán)藍(lán)設(shè)計尊重原作者,文章的版權(quán)歸原作者。如涉及版權(quán)問題,請及時與我們?nèi)〉寐?lián)系,我們立即更正或刪除。

      藍(lán)藍(lán)設(shè)計m.jjddy.com )是一家專注而深入的界面設(shè)計公司,為期望卓越的國內(nèi)外企業(yè)提供卓越的UI界面設(shè)計、BS界面設(shè)計 、 cs界面設(shè)計 、 ipad界面設(shè)計 、 包裝設(shè)計 、 圖標(biāo)定制 、 用戶體驗 、交互設(shè)計、 網(wǎng)站建設(shè) 平面設(shè)計服務(wù)



      日歷

      鏈接

      個人資料

      存檔