cryptoJs 前端用法
vue用法npm install crypto-js新建一个jiami.js然后main.js引入import cryptoJs from './utils/jiami'声明一下Vue.prototype.$jiami = function (word) {return cryptoJs.jiami(word)}Vue.prototype.$jiemi = function (word) {ret
·
vue 用法
npm install crypto-js
新建一个jiami.js
然后main.js 引入
import cryptoJs from './utils/jiami'
声明一下
Vue.prototype.$jiami = function (word) {
return cryptoJs.jiami(word)
}
Vue.prototype.$jiemi = function (word) {
return cryptoJs.jiemi(word)
}
jiami.js 的代码
'use strict'
import cryptoJs from 'crypto-js'
let keyOne = '秘钥自己写一个' // 秘钥
export default {
// 加密函數
jiami (word) {
let key = cryptoJs.enc.Hex.parse(keyOne)
let enc = ''
if (typeof word === 'string') {
enc = cryptoJs.AES.encrypt(word, key, {
// iv: iv
mode: cryptoJs.mode.ECB,
padding: cryptoJs.pad.Pkcs7
})
} else if (typeof word === 'object') {
let data = JSON.stringify(word)
enc = cryptoJs.AES.encrypt(data, key, {
// iv: iv
mode: cryptoJs.mode.ECB,
padding: cryptoJs.pad.Pkcs7
})
}
let encResult = enc.ciphertext.toString()
return encResult
},
// 解密函數
jiemi (word) {
let re='cryptoJs_error'
try{
let key = cryptoJs.enc.Hex.parse(keyOne)
let dec = cryptoJs.AES.decrypt(cryptoJs.format.Hex.parse(word), key, {
// vi: vi
mode: cryptoJs.mode.ECB,
padding: cryptoJs.pad.Pkcs7
})
let decData = cryptoJs.enc.Utf8.stringify(dec)
re= decData
}catch (e) {
//console.log('解密失败');
re= 'cryptoJs_error'
}
if(re==''){
re= 'cryptoJs_error'
}
return re;
}
}
// 使用
this.$jiami(word)
this.$jiemi(encWord)
普通html页面 js 引入
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title></title>
<script src="crypto-js.js"></script>
<script>
// 要加密的文字
var token =
"123456"
// 秘钥
var key = "秘钥自己写一个"
var enKey=CryptoJS.enc.Hex.parse(key)
var encString = CryptoJS.AES.encrypt(token, enKey, {
mode: CryptoJS.mode.ECB,
padding: CryptoJS.pad.Pkcs7
});
// 加密后
var word=encString.ciphertext.toString();
console.log(word)
var deKey = CryptoJS.enc.Hex.parse(key);
var dec = CryptoJS.AES.decrypt(CryptoJS.format.Hex.parse(word), deKey, {
mode: CryptoJS.mode.ECB,
padding: CryptoJS.pad.Pkcs7
})
// 解密后
var deToken=CryptoJS.enc.Utf8.stringify(dec);
console.log(deToken)
</script>
</head>
<body>
</body>
</html>
crypto-js.js 自己下载
更多推荐
已为社区贡献1条内容
所有评论(0)