既定の ASP.NET メンバーシップ プロバイダーを使用するサイトで、メンバーシップ パスワードの形式がハッシュを使用するように構成され、ハッシュ アルゴリズムが SHA1 (既定値。LinkedIn で使用されるものと同じ) であり、メンバーシップ データベースが侵害されたと仮定すると、追加の情報はありますか?上記のデータの悪用をさらに軽減するために講じることができる手順は?
メンバーシップ スキーマをざっと見ると、パスワードはソルト キーを使用しているようです。この措置は十分でしょうか?
簡単に言えば、パスワードを保存するために、MD5、SHA1、 SHA256、SHA512、SHA-3などを使用しないでください.bcryptはパスワードを保存する唯一の安全な方法です。
上記の断言の理由は次のとおりです。
少し前の質問以来
私はBCryptをパスワード ハッシュ コードとして使用し始めました。読み続けていることから、ユーザー テーブルを取得したとしても、そこからストレージ パスワードのプレーン テキストを取得するのはかなり困難です。
これをカスタム メンバーシップ プロバイダーで使用しているため、独自のパスワードをホストできます。
ブログ投稿から:
Bクリプトを選ぶ理由 最も一般的なパスワード ストレージ スキームは、 MD5やSHA-1などの高速ハッシュ アルゴリズムに基づいています。BCrypt は、Blowfish ブロック暗号を利用する計算コストの高い適応ハッシュ スキームです。初期化時間が遅いため、ブルート フォース パスワード クラッキングの試みの有効性が大幅に制限されるため、パスワードの保存に最適です。追加するオーバーヘッドの量は構成可能 (適応部分) であるため、パスワードの候補をテストするために必要な計算リソースは、ハードウェア機能の進歩に伴って増加する可能性があります。
codahale.com から、パスワードを安全に保存する方法も読むことができます...
ちなみにBCryptのプロジェクトはCodeplex上にある