Jak odszyfrować AES256 w PHP?
Mam zaszyfrowany fragment tekstu, który muszę odszyfrować. Jest zaszyfrowany za pomocą AES-256-CBC. Mam zaszyfrowany tekst, klucz i iv. Jednak bez względu na to, co próbuję, po prostu nie mogę go uruchomić.
Internet zasugerował, że szyfr Rijndael mcrypt powinien być w stanie to zrobić, więc oto co mam teraz:
function decrypt_data($data, $iv, $key) {
$cypher = mcrypt_module_open(MCRYPT_RIJNDAEL_128, '', 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;
}
W tej chwili otrzymuję 2 ostrzeżenia, a wyjście jest bełkotliwe:
Warning: mcrypt_generic_init() [function.mcrypt-generic-init]: Key size too large; supplied length: 64, max: 32 in /var/www/includes/function.decrypt_data.php on line 8
Warning: mcrypt_generic_init() [function.mcrypt-generic-init]: Iv size incorrect; supplied length: 32, needed: 16 in /var/www/includes/function.decrypt_data.php on line 8
Każda pomoc byłaby doceniana.