php + openssl 3.x / ISP, Debian 12 (bookworm)

DrSheep

New Member
EDIT / LÖSUNG:
Falls das Problem wer anders hat:
Einfach
AES-256-CBC-HMAC-SHA256
mit
AES-256-CBC
ersetzen. Fertig. :)

----------------------------------------------

Nabend,

habe mal eine Frage zu php und openssl (bzw. openssl_encrypt).
Habe vor einigen Tagen meinen Server von Debian 11 zu 12 (bookworm) geupdated.
Dadurch auch openssl 1.1.1n -> 3.0.9 (aktuell).

ISPConfig und alles 1:1 wie vorher.
Jedoch habe ich festgestellt, dass eine Funktion auf einmal komplett anders "verschlüsselt".

Hier mal der Source:
PHP:
function encrypt($data,$salt) {
    $key = 'FIXED_KEY';
    $iv_size = openssl_cipher_iv_length("AES-256-CBC-HMAC-SHA256");
    $hash = hash('sha256', $salt . $key . $salt);
    $iv = substr($hash, strlen($hash) - $iv_size);
    $key = substr($hash, 0, 32);
    $encrypted = base64_encode(openssl_encrypt($data, "AES-256-CBC-HMAC-SHA256", $key, OPENSSL_RAW_DATA, $iv));
    if ($encrypted === false) {
        return $data;
    }
    return $encrypted;
}

Jedoch kommt bei Debian 11 ein "korrektes" Ergebnis, Debian 12 mit openssl 3 jedoch nicht.
Hier mal 2 Ausgaben (php8.2)

- Debian 11 (openssl 1.1.1n)
AUB7JcwpkH4pBYmGxf3OhqC5rGFJTzU0sE/LUYEooAPS/q4nZDFic6lVLZVTR8et
- Debian 12 (openssl 3.0.9)
AUB7JcwpkH4pBYmGxf3OhqC5rGFJTzU0sE/LUYEooAM=

Hat jemand eine Idee, wo mein Fehler ist?

Danke und liebe Grüße! :)
 
Zuletzt bearbeitet:

Werbung

Top