0

生成された base64 ハッシュから格納するパスワード列があります。したがって、ユーザーがログインするためのパスワードを入力すると、データベースのパスワード列とユーザー パスワードの base64 が比較されます。しかし、(mysql mysqldump を使用して) Linux から Windows 7 にデータを移行した後、パスワードが一致しません。DB からのパスワードと、ユーザーが入力したパスワードから生成された base64 ハッシュは同じように見えますが。Linux から Windows に移行するときにパスワード列を移行するときに、mysql で追加の手順を実行する必要がありますか。

注: Linux から別の Linux にデータを移行すると機能するため、Linux から Windows にデータを移行するときに unixtodos を実行する必要があると考えました。しかし、それでも失敗します。

アプリケーションでJavaを使用しますここに画像の説明を入力

パスワードのエンコードに使用されるコード

try
{
    MessageDigest md = MessageDigest.getInstance("SHA-512");
    md.update(password.getBytes());
    byte[] raw = md.digest();
    encodedPassword = (new BASE64Encoder()).encode(raw);
}
4

0 に答える 0