Я новичок в AES, но из того, что я нашел, существует несколько режимов (ECB, CBC и т. Д.), А в разных режимах нужны различные требования вектора инициализации, блоки и кодировки. Я пытаюсь расшифровать следующуюAES decrypt in php
Xrb9YtT7cHUdpHYIvEWeJIAbkxWUtCNcjdzOMgyxJzU/vW9xHivdEDFKeszC93B6MMkhctR35e+YkmYI5ejMf5ofNxaiQcZbf3OBBsngfWUZxfvnrE2u1lD5+R6cn88vk4+mwEs3WoAht1CAkjr7P+fRIaCTckWLaF9ZAgo1/rvYA8EGDc+uXgWv9KvYpDDsCd1JStrD96IACN3DNuO28lVOsKrhcEWhDjAx+yh72wM=
с использованием PHP и (текст) ключ «043j9fmd38jrr4dnej3FD11111111111» с режимом CBC и IV всех нулей. Я могу заставить его работать с this tool, но не могу получить его в 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 кодирования или поворотом ключа в бинарное первый. Я пробовал расшифровать многие вещи, и все, что я могу произвести, это тарабарщина. Любая помощь будет очень оценена.
У вас есть строка с кодировкой base64. Его нужно будет декодировать обратно в двоичный мусор, прежде чем вы его подадите в mcrypt. –
Я пробовал это ... и это может быть частью этого, но я все еще получаю тарабарщину, даже делая это ... Я обновлю свой вопрос, чтобы показать его, хотя – hackartist