1

「パスワード」と呼ばれるユーザー フィールドを含む cpanel サーバー上にデータベースがあります。phpmyadmin でフィールドを見ると、すべてのパスワードが md5 で暗号化されているように見えます。

たとえば、「12345」というパスワードは暗号化され、データベースでは「e10adc3949ba59abbe56e057f20f883e」として表示されます。これで、元のサーバーでは問題ありません。パスワードがデータベースで暗号化されていても、関連する Web サイトでパスワードを「12345」と入力すると、それが認識されてアクセスできるようになるためです。

問題は、データベースをエクスポートおよびインポートするときです。同じデータベースを別のサーバーにインポートした後、パスワード値はデータベース内で暗号化されたままです。しかし、関連するウェブサイトにログインしようとすると、復号化されたパスワード、つまり「12345」が機能しなくなりました。パスワードを「e10adc3949ba59abbe56e057f20f883e」と入力しなければログインできません。したがって、パスワード列のデータが別のデータベースにインポートした後に復号化されていないことが問題であると推測しているため、拡張 md5 値の代わりに「12345」と入力すると、一致せず、間違ったパスワード エラーが表示されます。 .

誰でもこの問題を解決するのを手伝ってもらえますか? この Web サイトを別のサーバーに移行することになっていますが、これは学校のシステムであり、現在、この問題のためにアクセスできるユーザーはいません。

ありがとう。

4

1 に答える 1

2

md5 は暗号化ではなく、一方向ハッシュです。ハッシュから元の値を見つけることはできません。

2 番目のサーバーで e10adc3949ba59abbe56e057f20f883e パスワードが機能する場合、アプリケーションがユーザーから受け取った入力値のハッシュを比較しておらず、入力値自体を比較していることが唯一の理由です。

于 2013-08-26T10:41:25.717 に答える