パスワードの塩漬け - タイムスタンプを使用するよりも良いオプションはありますか?

StackOverflow https://stackoverflow.com/questions/3516420

質問

私は現在、ASP.NET MVC 2サイトをいくつか構築しており、パスワードを塩漬けにするための私のオプションが何であるか疑問に思っています。私のPHP作業で、私は通常、ユーザーが登録したときのタイムスタンプを取得し、その後、SHA1を使用して全体をハッシュする前にパスワード文字列の最後に追加しました。私の本能は、このアプローチが十分ではないかもしれないということです。

とにかく、私はASP.NETを使用してユーザー管理を初めて使用するので、最初からベストプラクティスを始めることは私の最大の関心事だと思います。 ASP.NET Webフォームにはユーザー管理が組み込まれていることは知っていますが、MVCについては確信がありません。

役に立ちましたか?

解決

塩の唯一のポイントは、複数のユーザーがパスワードに対して同じハッシュを持っている虹の攻撃を防ぐことです。そのため、1つのパスワードを正常に逆転させることは、同じハッシュを持つ他のすべての人のパスワードであることを知っていることを意味します。 1桁の塩でさえ、同じパスワードを持つ2人のユーザーが異なる塩を持っている場合、異なるハッシュを持つため、それを防ぎます。

塩が変わらないものであり、それはすべてのユーザーによって異なる限り、任意の価値はうまく機能します。登録のタイムスタンプは、そのフィールドを更新しなければ(パスワードのハッシュを無効にしてログインを防ぐ)、問題が発生します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top