私は AES を初めて使用しますが、いくつかのモード (ECB、CBC など) があり、モードごとに異なる初期化ベクトル要件、ブロック、およびエンコーディングが必要であることがわかりました。私は以下をデコードしようとしています
Xrb9YtT7cHUdpHYIvEWeJIAbkxWUtCNcjdzOMgyxJzU/vW9xHivdEDFKeszC93B6MMkhctR35e+YkmYI5ejMf5ofNxaiQcZbf3OBBsngfWUZxfvnrE2u1lD5+R6cn88vk4+mwEs3WoAht1CAkjr7P+fRIaCTckWLaF9ZAgo1/rvYA8EGDc+uXgWv9KvYpDDsCd1JStrD96IACN3DNuO28lVOsKrhcEWhDjAx+yh72wM=
php と (テキスト) キー "043j9fmd38jrr4dnej3FD11111111111" をモード CBC とすべてゼロの IV で使用します。このツールで動作させることはできますが、php で行うことはできません。私が使用しているコードは次のとおりです。
function decrypt_data($data, $iv, $key) {
$data = base64_decode($data);
$cypher = mcrypt_module_open(MCRYPT_RIJNDAEL_256, '', MCRYPT_MODE_CBC, '');
// initialize encryption handle
if (mcrypt_generic_init($cypher, $key, $iv) != -1) {
// decrypt
$decrypted = mdecrypt_generic($cypher, $data);
// clean up
mcrypt_generic_deinit($cypher);
mcrypt_module_close($cypher);
return $decrypted;
}
return false;
}
ベース 64 エンコーディングに関連する何かが欠けているか、最初にキーをバイナリに変換している可能性があると思います。私は多くのものを解読しようとしましたが、私が作成できるのは意味不明なものだけです. どんな助けでも大歓迎です。