前段时间做项目有用到数据加密,前端加密,后端解密(前端也可以解密),话不多说进入正题:
第一步:
npm i crypto-js -S
第二步:
在需要加密或解密的地方引入crypto-js;
import CryptoJS from 'crypto-js'
第三步:
自定义加密、解密的函数
<script> import CryptoJS from 'crypto-js'
export default {
name: 'HelloWorld',
data () {
return { }
},
methods:{
/*加密*/
encrypt(word){
// 更新:这个key的字符位数要求:4的倍数(包含"")
var key = CryptoJS.enc.Utf8.parse("123456789abc");//123456789abc这个自己随便写,相当于密钥吧,也可以自己单独用个变量存
var srcs = CryptoJS.enc.Utf8.parse(word);
var encrypted = CryptoJS.AES.encrypt(srcs, key, {mode:CryptoJS.mode.ECB,padding: CryptoJS.pad.Pkcs7});
return encrypted.toString();
},
/*解密*/
decrypt(word){
var key = CryptoJS.enc.Utf8.parse("123456789abc");//要和加密的密钥一样
var decrypt = CryptoJS.AES.decrypt(word, key, {mode:CryptoJS.mode.ECB,padding: CryptoJS.pad.Pkcs7});
return CryptoJS.enc.Utf8.stringify(decrypt).toString();
}
},
created(){
console.log("加密'你好':",this.encrypt("你好"))
console.log("解密'eI51YMemQyesQrFNbwgV/Q==':",this.decrypt("eI51YMemQyesQrFNbwgV/Q=="))
}
}
</script>
打印结果:
ok了,如要用到后端java解密,请移步https://www.cnblogs.com/libo0125ok/p/7668026.html