-1

MD5パスワードを復号化できるかどうか知りたいのですが

4

3 に答える 3

4

md5を使用してユーザーのパスワードを自動的に生成します

しないでください。MD5は安全ではありません

これらのパスワードを暗号化して、実際のパスワードのように表示する方法

「復号化」という意味だと思います。できません。MD5はハッシュアルゴリズムであり、元に戻せないように設計されています。

ユーザーのパスワードを生成しないでください。プロセスは次のようになります。

  1. ユーザーがパスワードを生成します
  2. ユーザーがSSL経由でパスワードを送信します
  3. パスワードをハッシュします(MD5ではありません)
  4. ハッシュされたパスワードを保存します

ユーザーがログインしたとき:

  1. ユーザーがSSL経由でパスワードを送信します
  2. パスワードをハッシュします
  3. ハッシュされたパスワードをデータベース内のハッシュと比較します
于 2013-02-19T09:42:40.477 に答える
1

それらを暗号化されたデータベースに保存するだけです-それが目的です。

パスワードを生成します。

$characters = 'abcdefghijklmnopqrstuvwxyz0123456789';
$your_password_length = 8;
$password_unencrypted = '';
for ($i = 0; $i < $your_password_length; $i++) {
  $password_unencrypted .= $characters[rand(0, strlen($characters) - 1)];
} 

今それを暗号化します

$password_encrypted = md5($password_unencrypted);

これで、password_unencryptedとpassword_encryptedの2つの変数ができました。たとえば、password_unencryptedをメールでユーザーに送信できますが、DBには暗号化されたパスワードが含まれている必要があります。ユーザーがログインするときは、暗号化された入力をDB内の暗号化されたパスワードと比較する必要があります。

//..get the md5 from DB to $password_encrypted and then
if (md5($_POST['users_password_in_form']) == $password_encrypted){
// ...log in...
}
于 2013-02-19T09:49:11.090 に答える
1

s is if he somehow acess the database itself (probably he got the password), so does it really makeパスワードとデータベースの安全性について、パスワードがハッシュまたは暗号化されている場合、ユーザーがパスワードの違いにアクセスできる唯一の方法があることを念頭に置いてください。私m asking cause we are trying to protect the user password, but if someone has acess to the database, he dont need the user password, he can make the changes on the database itself, and about the encrypting, i find on php manual that blowfish is the most indicated, but iはグーグルでの最初の結果検索でオンライン解読者を見つけました。あなたはそれについてどう思いますか?前もって感謝します。

于 2013-04-10T16:08:24.057 に答える