ここにいくつかあります:
-
あなたはそれを実際に暗号化しているのではなく、ハッシュしているのです。初心者が混乱するのは簡単ですが、それを邪魔にならないようにしたかっただけです。
-
MD5は使用しないでください。これは、非常に安全なハッシュではありません。可能であれば、代わりにSHAバリアントの1つを使用してください。
-
パスワードをハッシュするだけでなく、パスワードも「ソルト」する必要があります。基本的に、これには、ハッシュする前にパスワードにランダムな文字列を追加し、後で取得できる場所にそのランダムな文字列を保存することが含まれます(ユーザーがパスワードを入力したときにハッシュを検証できるようにするため)。これにより、事前に計算された辞書攻撃を防ぐことができます。
パスワードの生成に関しては、あなたは正しい方向に進んでいると思います-彼らがアカウントを作成し、それを彼らに電子メールで送信し、それをハッシュして、ハッシュされた(そしてランダムなソルト)をユーザーレコードのユーザーレコードに保存するときにパスワードを生成しますDB。