des vue 加密解密_vue DES加密解密

您现在的位置是:网站首页>>前端技术>>Vue

vue DES加密解密

发布时间:2018-09-05 18:44:24作者:wangjian浏览量:2495点赞量:1

在vue中使用DES加密解密需要使用crypto-js插件

cnpm install crypto-js(npm install crypto-js)

des加密解密方法//DES加密

encryptByDES(message, key){

var keyHex = CryptoJS.enc.Utf8.parse(key);

var encrypted = CryptoJS.DES.encrypt(message, keyHex, {

mode: CryptoJS.mode.ECB,

padding: CryptoJS.pad.Pkcs7

});

return encrypted.ciphertext.toString();

},

//DES  ECB模式解密

decryptByDES(ciphertext,key){

var keyHex = CryptoJS.enc.Utf8.parse(key);

var decrypted = CryptoJS.DES.decrypt({

ciphertext: CryptoJS.enc.Hex.parse(ciphertext)

}, keyHex, {

mode: CryptoJS.mode.ECB,

padding: CryptoJS.pad.Pkcs7

});

var result_value = decrypted.toString(CryptoJS.enc.Utf8);

return result_value;

}

使用let message = '123456';//加密数据

let key = '12345678';

//加密

let des = this.encryptByDES(token,key);

console.log(des);

//解密

console.log(this.decryptByDES(des,key));

在config文件下新建一个function.js文件专门放入vue的一些公用方法,将DES的加密解密方法放进去import CryptoJS from 'crypto-js';

//DES加密

export const encryptBy = (message) => {

var key = '12345678';

function encryptByDES (message, key) {

var keyHex = CryptoJS.enc.Utf8.parse(key)

var option = {mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7}

var encrypted = CryptoJS.DES.encrypt(message, keyHex, option)

return encrypted.ciphertext.toString()

}

return encryptByDES(message, key);

}

//DES解密

export const decryptBy = (message) => {

var key = '12345678';

//DES  ECB模式解密

function decryptByDES(message,key){

var keyHex = CryptoJS.enc.Utf8.parse(key);

var decrypted = CryptoJS.DES.decrypt({

ciphertext: CryptoJS.enc.Hex.parse(message)

}, keyHex, {

mode: CryptoJS.mode.ECB,

padding: CryptoJS.pad.Pkcs7

});

var result_value = decrypted.toString(CryptoJS.enc.Utf8);

return result_value;

}

return decryptByDES(message, key);

}

在vue中调用

{{ msg }}

点击

import {encryptBy,decryptBy} from '../../config/function';

export default {

name: 'Home',

data () {

return {

msg: '加密解密'

}

},

methods:{

click1(){

let message = '123456';//加密数据

let key = '12345678';

//加密

console.log(encryptBy('123456'));

console.log(decryptBy('103e702e0737327c'));

},

}

}

h1, h2 {

font-weight: normal;

}

ul {

list-style-type: none;

padding: 0;

}

li {

display: inline-block;

margin: 0 10px;

}

a {

color: #42b983;

}

现象

c73ca0ec64a4ad7a1a72186ced93eef4.png

272a2ff497ff398701eef161070cd122.png

1

+1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值