前后端(PHP)使用AES对称加密

// 这个是加密用的
function encrypt(text){
    var key = CryptoJS.enc.Utf8.parse('1463587320654321'); //为了避免补位,直接用16位的秘钥
    var iv = CryptoJS.enc.Utf8.parse('1758326540123456'); //16位初始向量
    var encrypted = CryptoJS.AES.encrypt(text, key, {
            iv: iv,
            mode:CryptoJS.mode.CBC,
            padding:CryptoJS.pad.Pkcs7
        });
    return encrypted.toString();
}
encrypt(123); // AMFSKTJa3K092qSi5XC46w==

// 这个是解密用的
function decrypt (text) {
  var key = CryptoJS.enc.Utf8.parse('1463587320654321'); //为了避免补位,直接用16位的秘钥
  var iv = CryptoJS.enc.Utf8.parse('1758326540123456'); //16位初始向量
  var encrypted = CryptoJS.AES.decrypt(text, key, {
      iv: iv,
      mode:CryptoJS.mode.CBC,
      padding:CryptoJS.pad.Pkcs7

  }); 

  return encrypted.toString(CryptoJS.enc.Utf8); 
}

php

/**
 * 传输密码加解密
 */
function encryptWithOpenssl($data = '',$key='1463587320654321',$iv='1758326540123456')
{
    $a = openssl_encrypt($data, 'aes-128-cbc', $key, 1, $iv);
    return base64_encode($a);
}

function dencryptWithOpenssl($data = '',$key='1463587320654321',$iv='1758326540123456')
{
    return openssl_decrypt($data, 'aes-128-cbc', $key, 0, $iv);
}
dd(dencryptWithOpenssl(encryptWithOpenssl(123456)));//123456
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值