2010-11-24 16 views
2

私はSHA1で塩漬けされ、ハッシュされたパスワードを格納するのではなく、AESアルゴリズムを使用して暗号化されたパスワードを格納することが大丈夫かどうかを調べようとしています。取得可能なパスワードを保存してもよろしいですか?

これは私の会社が独自のCMSに含まれているメンバーシップシステムを更新中であるためです。現在、私たちはパスワードにAES暗号化を使用しています。これにより、お客様がサポートを依頼する際に管理者のパスワードを簡単に検索することができます。スタッフが変更されたときは、すべての管理者パスワードを変更する方針です。パスワード検索ツールを使用すると、簡単に新しいパスワードを取得することができ、ワークフローは中断されません。

ほとんどの人は、暗号化されたパスワードのハッシュ化はパスワードの安全な取り扱い方法だと思う印象を受けますが、ハッシュ化されたパスワードを使用するときの現在の会社の操作に準拠する方法はわかりません。また、パスワード操作を変更するために必要な企業文化の変化は、パスワードをハッシュする魅力的な理由がある場合を除き、おそらく起こりません。

ハッシュされたパスワードは、一般に、暗号化されたパスワードと比較して、必要なものとして受け入れられますか?どうして?

答えて

3

あなたは、ユーザー認証のためのパスワードを保存するアプリケーション内にあることを意味します。

通常、それらをハッシュ化して暗号化して保存する動機は、データベースを盗んだり、サーバーのセキュリティを侵害してパスワードを取得したりすることを防ぐためです。

これらをAESで暗号化する場合は、キーをどこかに保存しておく必要があります。変更することはできません(もちろん、それらをすべて復号化して再暗号化しない限り)。

誰かがマシンを侵害した場合、キーを取得できます。これは、パスワードを解読するために必ずメモリに保持されるためです。

どちらかというと、かわいいPKIを使用しています。 AESは対称暗号です。 (攻撃者が鍵を入手することができなければならないとして)本当に、アプリケーションが最もカジュアルな攻撃者が、任意のに対して、そのデータベースを守る助けにはなりませんパスワードの暗号化

。それらをハッシュすると、パスワードが強い場合にクリアテキストが得られにくくなります。

+1

ありがとうございます。あなたの答えとUnhandledExceptionからのフィードバックに基づいて、私は上司に暗号化の代わりにハッシュアルゴリズムに移行すべきだと説得することができました。 – quakkels

4

可逆暗号化によるパスワードの暗号化は疑わしい値です。

明らかに、ルックアッププログラムはキーにアクセスできます。つまり、プログラムにアクセスできる人も誰でも鍵にアクセスできると想定する必要があります。あなたが病気の場合は、その配偶者、重要な人、部屋などもすべてそのキーにアクセスできると想定する必要があります。また、(キーが使用されたので)これまで過去にネットワークに分割している誰もキーへのアクセス権を持っています。

そのようにシステムを使用しての問題は、あなたがそれが壊れている知っていることはありませんです。キーにアクセスできますか?たった今?いつでもパスワードを参照できますか?あなたがそれを変更するとすぐに、私はそれが何に変更されたのか知っていますか?

ソルトハッシュ(vs reversible encyrption)を使用すると、実装に独自の課題がありますが、パスワードリストを盗むことはほとんど価値がありません(強力なアルゴリズム、複数のラウンド、最小のパスワード標準、 1レコードあたりの塩)。あなたの現在のシステムは "良い暗号化を感じています"。経営陣は実際に安全ではないと感じるかもしれませんが、実際には安全ではありません。パスワードをプレーンテキストまたはスティッキーノートに保存するよりも、決定的な攻撃者には最小限のスピードでバンプするのが賢明です。最大の問題は、あなたが「安全」であることを証明することができず、侵害されたときに警告を発することができないことです。あなたは今、妥協の可能性があり、それを知らないかもしれません。

+0

ありがとうございました! – quakkels

+0

この場合、秘密鍵はAESが対称暗号であるため、ちょうど "鍵"です。でも、はい。それは基本的に私が言っていたことですが、おそらくあなたはそれをより良く説明します。 – MarkR

+0

@マーク。ありがとう。分かりやすくするために「プライベート」を削除しました。 –

関連する問題