卡住试图使用 mcrypt PHP 解密 AES 128


Stuck trying to decrypt AES 128 using mcrypt PHP

我真的需要帮助,花了几个小时试图让这项工作无济于事。

我有使用 AES 加密的数据。

Block size = 128
KeySize = 256
Mode = CBC
Padding = PKCS7

它作为我的脚本的 POST 出现。

到目前为止,我所拥有的是:

$encrypted = $_POST;
foreach ($encrypted as $k => $v) {
    $encrypted = trim($k);
}
$myKey = "FKQ5sTfotEDF7W07IpvyPFZ0IXeegs4b";
$myIV = "RFajS7JcDJDuAGAT"
$crypttext = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $myKey, $encrypted , MCRYPT_MODE_CBC, $myIV);
echo $crypttext;

不行。我在这里错过了什么?

从您调用$_POST的方式来看,您似乎想要原始发布数据。 $_POST 变量包含一个已发布的键=>值对数组。你应该使用

$encrypted = file_get_contents("php://input");

参考: http://us.php.net/manual/en/wrappers.php.php