97国产精品视频人人做人人爱,3344在线观看无码,成年人国产视频,欧美日一级片,在线看AV天堂,高清无码一本到东京热,欧美一级黄片一区2区,免费又爽又刺激高潮网址

VueJs里利用CryptoJs實現Md5加密和3Des加密及解密

2021-5-18    前端達人

前言

前我們介紹的用于vue用于數據簽名的操作,《【干貨】Vue TypeScript根據類生成簽名字符串》,其目的就是用于生成這個再轉MD5加密的模式進行校驗,原來我們在C#和Android里面已經實現這些方式,因為前端準備用Vue來做,所以加密這塊少不了也需要實現的。

安裝Crypto

Crypto里面可以把md5和3des都一起做了,所以我們直接安裝這個比較方便

找到我們的程序目錄,按住Shift加鼠標右鍵,選擇在此處打開Powershell窗口

然后在cmd窗口里面輸入npm install crypto-js -save-dev 

安裝完成后可以看到紅框下面標注著成功了。


代碼演示


MD5加密

我們還是用上次簽名的那個項目里面,首先要先引用Crypto-js


getmd5,我們再寫一個GetMd5的方法,傳入的字符串直接生成MD5的字符返回,


接下來再定義一個雙向綁定的字符串,在點擊簽名的時候同時生成md5的字符串顯示的頁面上

運行后的效果




3DES加密、解密

核心代碼

加密

   Encrypt3Des(str: string, aStrKey: string, ivstr: string): string {
        const KeyHex = CryptoJS.enc.Utf8.parse(aStrKey);
        const encrypted = CryptoJS.TripleDES.encrypt(str,
            KeyHex,
            {
                mode: CryptoJS.mode.CBC,
                padding: CryptoJS.pad.Pkcs7,
                iv: CryptoJS.enc.Utf8.parse(ivstr)
            });
        let hexstr = encrypted.ciphertext.toString().toUpperCase();
        console.log(hexstr);
        return hexstr;
    }

一般網上的加解密最后紅框這里我們直接是輸出 return encrypted.tostring(),但是因為我們自己的C#和Android的3Des的加解密都是最后輸出的16進制的字符串,所以我們改為紅框這里輸出的樣式。



解密

    Decrypt3Des(str: string, aStrKey: string, ivstr: string): string {
        const KeyHex = CryptoJS.enc.Utf8.parse(aStrKey);
        //因為我們加密的時候用到的16進制字符串,需要進行轉換
        //第一步把16進制字符串轉為WordArray格式
        const WordArray = CryptoJS.enc.Hex.parse(str);
        //第二步把WordArray再轉為base64的字符串
        const base64str = CryptoJS.enc.Base64.stringify(WordArray);
        //第三步再進行解密
        const decrypted = CryptoJS.TripleDES.decrypt(base64str,
            KeyHex,
            {
                mode: CryptoJS.mode.CBC,
                padding: CryptoJS.pad.Pkcs7,
                iv: CryptoJS.enc.Utf8.parse(ivstr)
            });

        return decrypted.toString(CryptoJS.enc.Utf8);
    }

這里比較重要就是紅框里面,因為我們的加密最后輸出的是16進制的字符串,所以我們解密的時候首先要把16進制字符串轉為WordArray格式,再轉換為BASE64的字符串,最后再進行解密。因為我也是個前端小白,就是這個問題我也是研究了一下午才搞明白。

最后下面的黃框要注意輸出的字符要轉為Utf8。




其余設置

我們在test.ts里面定義了兩個字符串,一個des3encryptstr的加密后的字符串,一個des3decryptstr是解密后的字符串,然后又加上了兩個方法,一個是加密的方法btnencrypt,一個是解密的方法btndecrypt,分別調用的就是我們剛才寫的兩段核心代碼。


然后在test.vue.html里面加上雙向綁定顯示以及一個加密按鈕和一個解密按鈕。


頁面效果

未加密的效果

點擊加密后的效果

點擊解密后的效果


藍藍設計建立了UI設計分享群,每天會分享國內外的一些優秀設計,如果有興趣的話,可以進入一起成長學習,請掃碼藍小助,報下信息,藍小助會請您入群。歡迎您加入噢~~希望得到建議咨詢、商務合作,也請與我們聯系。

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


文章來源:https://my.oschina.net/u/4582134/blog/4582375

分享此文一切功德,皆悉回向給文章原作者及眾讀者.
免責聲明:藍藍設計尊重原作者,文章的版權歸原作者。如涉及版權問題,請及時與我們取得聯系,我們立即更正或刪除。

藍藍設計m.0391cbd.com )是一家專注而深入的界面設計公司,為期望卓越的國內外企業提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網站建設 平面設計服務

日歷

鏈接

個人資料

藍藍設計的小編 http://m.0391cbd.com

存檔

主站蜘蛛池模板: 久久黄色视频影| 亚洲狠狠婷婷综合久久久久| 99久久精品免费看国产免费软件| 国产精品太粉嫩高中在线观看| 26uuu国产精品视频| 亚洲电影天堂在线国语对白| 精品无码日韩国产不卡av| 激情国产精品一区| 午夜福利视频一区| 国产特级毛片| 亚洲国产精品人久久电影| 国产99视频在线| 欧美午夜精品| 制服丝袜一区二区三区在线| 亚洲欧美在线综合一区二区三区| 国产女人在线视频| 狠狠做深爱婷婷久久一区| 色偷偷男人的天堂亚洲av| 国产在线观看99| 久久精品国产在热久久2019| 国产福利一区在线| 国产欧美日韩91| 久久国产香蕉| 亚洲一级毛片| 日韩毛片免费视频| 久热中文字幕在线观看| 欧美日韩第三页| 国产麻豆另类AV| 深爱婷婷激情网| 久久久精品久久久久三级| 亚洲欧美成人网| 国产情精品嫩草影院88av| 亚洲专区一区二区在线观看| 在线免费看黄的网站| 久久精品娱乐亚洲领先| 成人国产精品一级毛片天堂| 亚洲bt欧美bt精品| 欧美全免费aaaaaa特黄在线| 欧美成人第一页| 国产男女免费完整版视频| 亚洲无线国产观看| 伊人色综合久久天天| 久久精品视频一| 欧美日韩国产高清一区二区三区| 国产精品美女免费视频大全| 黄色网站在线观看无码| 国产裸舞福利在线视频合集| 精品无码一区二区三区在线视频| 激情六月丁香婷婷四房播| 亚洲无限乱码一二三四区| 国产成人1024精品| 手机看片1024久久精品你懂的| 青青草原国产免费av观看| 伊人久久大香线蕉综合影视| 99re这里只有国产中文精品国产精品| 亚洲午夜综合网| 欧美伦理一区| 91色在线视频| 欧美成人一级| 亚洲AV成人一区二区三区AV| 精品视频在线一区| 制服丝袜一区二区三区在线| 91偷拍一区| 国产a网站| 国产人成在线观看| 亚洲欧洲美色一区二区三区| 少妇精品网站| 欧美日韩一区二区三区在线视频| 国产a v无码专区亚洲av| 午夜欧美在线| 国产jizzjizz视频| 区国产精品搜索视频| 99re视频在线| 青青草原偷拍视频| 最新国产精品第1页| 无码电影在线观看| 亚洲国产欧洲精品路线久久| 午夜视频www| 欧洲亚洲欧美国产日本高清| 午夜视频www| 一级毛片在线播放免费| 欧美啪啪视频免码|