Verwendung des Initialisierungsvektors in openssl_encrypt

Ich habe es mir angesehendiese Frage, und wollte es für mich tun. Als ich diesen Code ausgeführt habe (direkt ausdiese Antwort):

$textToEncrypt = "My super secret information.";
$encryptionMethod = "AES-256-CBC";  // AES is used by the U.S. gov't to encrypt top secret documents.
$secretHash = "25c6c7ff35b9979b151f2136cd13b0ff";

//To encrypt
$encryptedMessage = openssl_encrypt($textToEncrypt, $encryptionMethod, $secretHash, '1234567812345678');

//To Decrypt
$decryptedMessage = openssl_decrypt($encryptedMessage, $encryptionMethod, $secretHash);

//Result
echo "Encrypted: $encryptedMessage <br>Decrypted: $decryptedMessage";

Ich bekomme jedoch die Warnung

openssl_encrypt(): Using an empty Initialization Vector (iv) is potentially insecure and not recommended

Also habe ich mir das angeschautdocs, aber es gibt keine Dokumentation. ich habe das gefundenKommentar, aber immer noch nicht erwähnt, was der Initialisierungsvektor sein soll und wie ich ihn verwenden soll. Kann mich jemand aufklären?

Ich weiß, ich hätte etwas mehr googeln können, aber Stackoverflow taucht zuerst in so vielen Suchergebnissen auf, dass ich dachte, diese Frage könnte für alle anderen nützlich sein, die dieses Problem hatten.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage