パスワードを暗号化/復号化するために次の手法を使用しています。
$key = 'abcd';
$password = 'password';
$encrypted_password = base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, md5($key), $password, MCRYPT_MODE_CBC, md5(md5($key))));
$decrypted_password = rtrim(mcrypt_decrypt(MCRYPT_RIJNDAEL_256, md5($key), base64_decode($encrypted_password), MCRYPT_MODE_CBC, md5(md5($key))), "\0");
しかし、この暗号化されたパスワードを URL で別の Web ページに渡すと、次のようになります。
example.com/authenticate.php?pass=CuESFcvXHnQkZaY79WUL3U2aY9TROkjZFETk9Ur+iFY=
次に、同じキーを使用して元の形式に復号化していないため、結果としてガベージデータが得られます。
URLのエンコード/デコードの問題のようなものだと思いますか?
これを解決する方法はありますか?
ありがとう