如何将 CryptoJS.AES.decrypt 函数 (Javascript) 转换为 PHP?

问题描述

我有一个Javascript代码,输入keyencryptedText输出是json数据

const key = 'izfdylbrdoarl57wlxwgth4vbk5ar1br';
const keyObj = CryptoJS.enc.Base64.parse(key);
const encryptedText = 'jwvHD2+cHuNUz1E+QBM/hcnBoQSD9K/sginMhSv16c1hAp0LPRoBdVbd4p4tIEl1229Gon51kkjDn05j8ZNEPkZWFTLOkcY3tLT8/iaFVLaEzpnBpZHpMpfyD7QKxoilsJ2R1CsmGoSdBQUQVVZg/4tuWIgxlvhC7VPhQ5KR1kfaF/6kWufKaGDcpypBW5Rsji/Y9w91SrScQLheybtuGZp7KS2ptBIQPq5t5TiMyQW9uJLTk/UuBqujcbYWEgl+3Ps/zbfBtixC7eCKcyDlz8cpuvq8/jI86sLKmgRHj30jHbhjcclql/+EbE5ZFtqlaz8shheOAzJ2F79flYhqp1Pts4CiIGIkug2MA7hkqi0+R31EVmzwlztnsK0rlwoe9/DdKz75EW9A6shdJEz1sjjkrZhwCHwiJImU7FflNfqgYofCG3MTdeEQzLPXH3GMONDA5TYx0r+Igj6RT0ThhBkzXiQiXmr12mSra/cwabFJq1UnNexoyLh0vx2adTuFsyQuEFgfDGMBk+zDt4BqfGCbYEMS2lfKw7j7vizKgW+H+CnFo4hUyoRW4p9t6Vf5ObKcJK47AkfG/wFtpdbD5PIuBk5CmNWeUTLAG89L1NF0JOqe+63vNKNNV+qstKyC36qlnzBfjyqMuEjH/Udf3AX84sznhqnFDW0acrRL3aA1InQERJ/FHtBDdtZ2vtodd1yoB+LwfnEd3NALzEiF1ydDUrg2Chrsd5O4RT3jZkMIxHes4FH8tQ/NiGnGPYYDtY4ORX89k1n4O7IAyuEBkHjz+gH5UeilbcDhYVyab0Xdod1uUZUbPHQK9AWVDmipoAkN9IP/i4b3E0gaNcPLwkgPMKZbwoeFH4q4EGkczyR7FXRrPhAA42uP5CBaLG9yME8LIH4Y3hH5iErXuG2FRxmItqKlExVi6izu1xjIJ+eAZJFoPWxNBu3bLbU9f4UUD4jj5UWuz+XxqGbBOkVja3uSpVnXwSSfzDJhUd2HWkcfvs3SlMlRLVd1IsdzUVi5RlauJiErdAYH+Mqw+9cgHzVbzBetp85FdNTP/K0D2R7z1zC25e2yG5lMV7VGKB80zC5iFTM+B/haH0JBa/71K9s83cR/bmHtphL3o06Fmqkw/3sJWJG9dHAHFnN1R+Pyv2GvJAc8+AG6TpsgWQb1mHAPVe22ecuPsci1+9pFf2c='

const decrypted = CryptoJS.AES.decrypt(encryptedText,keyObj,{
      mode: CryptoJS.mode.ECB,padding: CryptoJS.pad.Pkcs7
});

console.log(decrypted.toString(CryptoJS.enc.Utf8))

我需要将其转换为PHP,以便它可以在后端使用,具有与Javascript相同的功能,输入和输出

目前我是这样写的,结果是空的。能不能看看我哪里出错了,非常感谢!

$key = base64_decode("izfdylbrdoarl57wlxwgth4vbk5ar1br");
$encryptedText = trim("jwvHD2+cHuNUz1E+QBM/hcnBoQSD9K/sginMhSv16c1hAp0LPRoBdVbd4p4tIEl1229Gon51kkjDn05j8ZNEPkZWFTLOkcY3tLT8/iaFVLaEzpnBpZHpMpfyD7QKxoilsJ2R1CsmGoSdBQUQVVZg/4tuWIgxlvhC7VPhQ5KR1kfaF/6kWufKaGDcpypBW5Rsji/Y9w91SrScQLheybtuGZp7KS2ptBIQPq5t5TiMyQW9uJLTk/UuBqujcbYWEgl+3Ps/zbfBtixC7eCKcyDlz8cpuvq8/jI86sLKmgRHj30jHbhjcclql/+EbE5ZFtqlaz8shheOAzJ2F79flYhqp1Pts4CiIGIkug2MA7hkqi0+R31EVmzwlztnsK0rlwoe9/DdKz75EW9A6shdJEz1sjjkrZhwCHwiJImU7FflNfqgYofCG3MTdeEQzLPXH3GMONDA5TYx0r+Igj6RT0ThhBkzXiQiXmr12mSra/cwabFJq1UnNexoyLh0vx2adTuFsyQuEFgfDGMBk+zDt4BqfGCbYEMS2lfKw7j7vizKgW+H+CnFo4hUyoRW4p9t6Vf5ObKcJK47AkfG/wFtpdbD5PIuBk5CmNWeUTLAG89L1NF0JOqe+63vNKNNV+qstKyC36qlnzBfjyqMuEjH/Udf3AX84sznhqnFDW0acrRL3aA1InQERJ/FHtBDdtZ2vtodd1yoB+LwfnEd3NALzEiF1ydDUrg2Chrsd5O4RT3jZkMIxHes4FH8tQ/NiGnGPYYDtY4ORX89k1n4O7IAyuEBkHjz+gH5UeilbcDhYVyab0Xdod1uUZUbPHQK9AWVDmipoAkN9IP/i4b3E0gaNcPLwkgPMKZbwoeFH4q4EGkczyR7FXRrPhAA42uP5CBaLG9yME8LIH4Y3hH5iErXuG2FRxmItqKlExVi6izu1xjIJ+eAZJFoPWxNBu3bLbU9f4UUD4jj5UWuz+XxqGbBOkVja3uSpVnXwSSfzDJhUd2HWkcfvs3SlMlRLVd1IsdzUVi5RlauJiErdAYH+Mqw+9cgHzVbzBetp85FdNTP/K0D2R7z1zC25e2yG5lMV7VGKB80zC5iFTM+B/haH0JBa/71K9s83cR/bmHtphL3o06Fmqkw/3sJWJG9dHAHFnN1R+Pyv2GvJAc8+AG6TpsgWQb1mHAPVe22ecuPsci1+9pFf2c=");
$chiperRaw = base64_decode($encryptedText);
$decryptedText = openssl_decrypt($chiperRaw,$cipher,$keyForPHP,OPENSSL_RAW_DATA);
echo $decryptedText;

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...