49

パスワードを保存する前に誤ってハッシュを停止したため、データベースにMD5パスワードとハッシュされていないパスワードが混在しています。

MD5ではないものをループしてハッシュしたいと思います。文字列がMD5ハッシュであるかどうかを確認することはできますか?

4

2 に答える 2

110

以下の機能で確認できます。

function isValidMd5($md5 ='')
{
    return preg_match('/^[a-f0-9]{32}$/', $md5);
}

echo isValidMd5('5d41402abc4b2a76b9719d911017c592');

MD5(メッセージダイジェストアルゴリズム)ハッシュは、通常、32桁の16進数としてテキスト形式で表されます。

この関数は次のことをチェックします。

  1. 文字と数字(af、0-9)のみが含まれます。
  2. 長さは32文字です。
于 2013-01-13T04:37:19.333 に答える