2016-04-07 24 views
0

私はハッシュされたパスワードを格納するテーブルと、パスワードが(個々のユーザーごとに)塩になった塩を持っているとしましょう。暗号化されたパスワードのセキュリティ

別のstackoverflowの質問に基づいて、塩が同じテーブルにハッシュされたパスワードで保存されることが大丈夫だと私は理解しました。

How insecure is a salted SHA1 compared to a salted SHA512

私の質問は、ハッシュされたパスワードを使用して、データベースがハッキングになるだろうされている場合は、ユーザーがそれらのハッシュのための虹のテーブルを持っているということと、塩がハッシュされたパスワードと同じテーブルに格納されている考慮すると、実際のパスワードを確認するのは簡単ではないでしょうか?あなたはその特定の虹のテーブルからパスワードから塩を排除する必要があります。

これを考慮すると、私はハッシュされたパスワードを使用して同じデータベース、テーブルに塩を格納するのがなぜ大丈夫なのか分かりません。誰かがもっと明確な説明をしてくれますか?

+1

*「特定のレインボーテーブルからパスワードから塩分を取り除くだけでいいですか?」 - それはどのように機能しますか?塩はハッシングプロセスの不可欠な部分なので、単純に排除することはできません。あなたは虹のテーブルに塩を組み込む必要があります。塩は各パスワードごとに固有のものなので、salt/passwordごとに異なる虹のテーブルを作成する必要があります。これはまさにポイントです。塩は攻撃者に個々にパスワードを攻撃するよう強制します。これにより、より多くの作業が発生し、大量のコレクションが実行不可能になります。 – deceze

+0

既にデータベースがある場合。保護すべきことはたくさんありません。 –

+0

@deceze:実際には塩がある場合、攻撃者は虹のテーブルをまったく気にしません。使用されているハッシュが既に表示されている場合、それぞれの可能なハッシュの各平文を計算するのはなぜですか? ;)単純に各パスワードに塩を追加してハッシュして、それが一致するかどうかを確認してください。完全な虹のテーブルを生成するよりもはるかに早く停止することができます。 – SilverlightFox

答えて

7

いいえ、ここに停止。あなたが塩漬けについて尋ねている場合でも、あなたはすでに間違った道にいる。これは間違っていることが非常に簡単なもので、完全に間違っていることを過度に自信を持って取得することが容易になるように、これを行う方法のひどく悪い例がたくさんあります。

最も簡単なこれを行う方法は、password_hash functionを使用して、あなた自身の風変わりなやり方を作り出すことではありません。これは実際にあなたがここで検討しているものよりもはるかに簡単で安全な方法です。

password_hash機能はBcryptをデフォルトで内部的に使用しています。ハッシュは無差別に難しく設計されており、レインボーテーブルでは使用できません。また調整が可能なので、必要に応じて任意にさらに難しくすることができます。

データベースを長期間保護するには、この調整可能係数が必要です。今日亀裂するのは非常に難しいことが10年後には些細かもしれないが、わからない。データベースが何らかの形で漏れても、しばらくの間はまだ保護されていることを確認するのが難しくなります。

ハッシュとソルトを同じテーブルに格納することが必要な場合が多く、それらを分割するのは無駄です。攻撃者が2つの異なるテーブルを取得することはほとんどありません。とにかくあなたがコントロールできなくなったバックアップからすべてのものを取ってくるだろう。

最新のクラッキングシステムでは、虹のテーブルでさえ気にしません。 GPU cracking is so insanely fastの現状では、一般的なパスワードは数秒で、一般的なパスワードは数分で、数時間または数日ではそれほど明瞭でない場合には、それは優先事項でもあります。 BitcoinのSHA256の使用は、この部門の多くの研究を推進し、これらのアルゴリズムをこの種のセキュリティにはほとんど役に立たなくしました。市場には、毎秒複数桁のハッシュを実行できるデバイスがあります。

実際には、ハードディスクから虹のテーブルを読み取るよりも高速です。レインボーテーブルは基本的に歴史です。

今日の脅威は、よく知られているパスワードの巨大な辞書であり、それをさらに天文学的な数の変種に変える方法です。これらはGPUをビジー状態に保ち、人々が使用するあまり一般的でなく、意図的に手の込んだパスワードの多くを発見することができます。

関連する問題