PHP 代码 public function encrypt($data, $key, $iv) { return base64_encode(openssl_enc
代码
public function encrypt($data, $key, $iv) { return base64_encode(openssl_encrypt($data, "AES-128-CBC", $key, true, $iv)); } public function decrypt($data, $key, $iv) { return openssl_decrypt( $data, 'AES-128-CBC', $key, 0 , $iv ); } public function decryptTojs($data, $key, $iv) { return openssl_decrypt( $data, 'AES-128-CBC', $key, 2 , $iv ); } * */
使用
public function encode(){ //php加密秘钥16位$encrypt_key = '1234567_IT_MIYAO';//长度必须为16位,前后端必须一致//加密向量16位$iv = "XIANGYU_IT_MIYAO";//PHP加密数据$arr = array('username' => '111', 'passWord' => '123456', 'name' => '小明');//转换成JSON字符串$encrypt_data = json_encode($arr);$encrypted = $this->encrypt($encrypt_data, $encrypt_key, $iv);//加密结果 var_dump($encrypted); } public function decode(){ //加密字符串 $encrypt_data = 'xxxxxxxxxxxxxxxx'; $encrypt_key = '1234567_IT_MIYAO'; $iv = "XIANGYU_IT_MIYAO"; $decode = $this->decrypt($encrypt_data,$encrypt_key,$iv); var_dump($decode); }
npm install crypto-js
let CryptoJS = require('crypto-js'); export default { encrypt(str, key, iv) { //密钥16位 var key = CryptoJS.enc.Utf8.parse(key); //加密向量16位 var iv = CryptoJS.enc.Utf8.parse(iv); var encrypted = CryptoJS.AES.encrypt(str, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 }); return encrypted.toString(); }, decrypt(str, KEY, IV) { var key = CryptoJS.enc.Utf8.parse(KEY); var iv = CryptoJS.enc.Utf8.parse(IV); var decrypt = CryptoJS.AES.decrypt(str, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 }); return decrypt.toString(CryptoJS.enc.Utf8); } }
import crypto from '../../api/crypto';//加密密钥16位var encrypt_key = '1234567_IT_MIYAO';//长度必须为16位 //加密向量16位var iv = 'XIANGYU_IT_MIYAO';//要加密的数据let data = { username: "xxxxx", password: "123456", name: "小明"}//加密var encrypted_string = crypto.encrypt(JSON.stringify(data), encrypt_key, iv);console.log(encrypted_string);// 解密try{var decrypted_string = crypto.decrypt(JSON.stringify(data), encrypt_key, iv);console.log(decrypted_string);}catch(exception){//错误console.log(exception.message);}
来源地址:https://blog.csdn.net/qq_36303853/article/details/127493140
--结束END--
本文标题: Vue+php 使用AES进行加密解密
本文链接: https://www.lsjlt.com/news/420248.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0