ユーザーがあなたのサイトに登録したとすると、選択したパスワードをハッシュし、そのハッシュをソルトとして使用し、そのソルトでパスワードを再ハッシュします。あなたは塩としてハッシュしているもののハッシュを使用していますか?
例:
String hash1 = MD5(password);
String endHash = MD5(hash1 + password);
その後、データベースに格納さendHash。私のデータベースが妥協した場合、この効果的なレインボーテーブルが攻撃を受けますか?それとも、簡単に壊すことができるものがないのでしょうか?
考えられているこれが最初のルールでなければなりませんセキュリティプロトコルを扱う:巧みにしようとしないでください、あなたはそれを壊すだけです。 ランダムな塩を使用してください。ユーザー名ではありません。何のハッシュでもありません。ちょうどランダムなデータ。 – Nefrubyr