VueJs里如何利用CryptoJs实现Md5加密和3Des加密及解密

今天就跟大家聊聊有关VueJs里如何利用CryptoJs实现Md5加密和3Des加密及解密,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

在大田等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供网站设计、成都网站设计 网站设计制作按需设计,公司网站建设,企业网站建设,成都品牌网站建设,营销型网站,外贸营销网站建设,大田网站建设费用合理。

安装Crypto

Crypto里面可以把md5和3des都一起做了,所以我们直接安装这个比较方便

VueJs里如何利用CryptoJs实现Md5加密和3Des加密及解密

找到我们的程序目录,按住Shift加鼠标右键,选择在此处打开Powershell窗口

VueJs里如何利用CryptoJs实现Md5加密和3Des加密及解密

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

安装完成后可以看到红框下面标注着成功了。

代码演示

MD5加密

我们还是用上次签名的那个项目里面,首先要先引用Crypto-js

VueJs里如何利用CryptoJs实现Md5加密和3Des加密及解密

getmd5,我们再写一个GetMd5的方法,传入的字符串直接生成MD5的字符返回,

VueJs里如何利用CryptoJs实现Md5加密和3Des加密及解密

接下来再定义一个双向绑定的字符串,在点击签名的时候同时生成md5的字符串显示的页面上

VueJs里如何利用CryptoJs实现Md5加密和3Des加密及解密

VueJs里如何利用CryptoJs实现Md5加密和3Des加密及解密

运行后的效果

VueJs里如何利用CryptoJs实现Md5加密和3Des加密及解密


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;
    }

VueJs里如何利用CryptoJs实现Md5加密和3Des加密及解密

一般网上的加解密最后红框这里我们直接是输出 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);
    }

VueJs里如何利用CryptoJs实现Md5加密和3Des加密及解密

这里比较重要就是红框里面,因为我们的加密最后输出的是16进制的字符串,所以我们解密的时候首先要把16进制字符串转为WordArray格式,再转换为BASE64的字符串,最后再进行解密。因为我也是个前端小白,就是这个问题我也是研究了一下午才搞明白。

最后下面的黄框要注意输出的字符要转为Utf8。


其余设置

VueJs里如何利用CryptoJs实现Md5加密和3Des加密及解密

我们在test.ts里面定义了两个字符串,一个des3encryptstr的加密后的字符串,一个des3decryptstr是解密后的字符串,然后又加上了两个方法,一个是加密的方法btnencrypt,一个是解密的方法btndecrypt,分别调用的就是我们刚才写的两段核心代码。

VueJs里如何利用CryptoJs实现Md5加密和3Des加密及解密

然后在test.vue.html里面加上双向绑定显示以及一个加密按钮和一个解密按钮。

页面效果

VueJs里如何利用CryptoJs实现Md5加密和3Des加密及解密

未加密的效果

VueJs里如何利用CryptoJs实现Md5加密和3Des加密及解密

点击加密后的效果

VueJs里如何利用CryptoJs实现Md5加密和3Des加密及解密

点击解密后的效果

看完上述内容,你们对VueJs里如何利用CryptoJs实现Md5加密和3Des加密及解密有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注创新互联行业资讯频道,感谢大家的支持。

网站栏目:VueJs里如何利用CryptoJs实现Md5加密和3Des加密及解密
链接地址:https://www.cdcxhl.com/article14/gdpgde.html

成都网站建设公司_创新互联,为您提供建站公司小程序开发自适应网站网站制作软件开发网站策划

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都定制网站网页设计