web-dev-qa-db-ja.com

KeePass:キーファイルまたは通常のパスワードを使用しますか?

私はKeePassデータベースを設定していますが、キーファイルを使用する機能を提供しています。これは、長くて複雑なパスワードを使用できるのでより安全ですが、キーファイルを開くだけで簡単に解読できます。データベース。私は2台のコンピューター(1台のデスクトップと1台のラップトップ)でのみキーファイルを使用します。どちらが最善のオプションですか?

ランダムなパスワードに近いものを思い出すのに苦労するので、キーファイルを使用する方が間違いなく魅力的です。

17
RCIX

使用能力について 'key files 'とKeePass

ブロック暗号の256ビットキーを生成するために、Secure Hash Algorithm SHA-256が使用されます。このアルゴリズムは、ユーザーによって提供されたユーザーキー(パスワードまたはキーファイル、あるいはその両方で構成される)を256ビットの固定サイズのキーに圧縮します。この変換は一方向です。つまり、ハッシュ関数を反転したり、同じハッシュに圧縮される2番目のメッセージを見つけることは、計算上実行不可能です。

最近発見された SHA-1に対する攻撃 はSHA-256のセキュリティに影響を与えません。 SHA-256は まだ非常に安全であると見なされています です。

別の最近の更新 がありますが、 このようなニュースはここでは関係ないと思います )。
手元にある

鍵の導出
パスワードのみが使用されている場合(つまり、キーファイルがない場合)、パスワードと128ビットのランダムソルトがSHA-を使用してハッシュされます。最終的なキーを形成するために256(ただし、いくつかの前処理があることに注意してください:辞書攻撃に対する保護)。ランダムソルトは、事前に計算されたハッシュに基づく攻撃を防ぎます。

パスワードの両方の鍵ファイルを使用する場合、最終的な鍵は次のように導出されます:SHA-256(SHA-256(password)、key file内容)、つまり、マスターパスワードのハッシュがキーファイルのバイトと連結され、結果のバイト文字列が再びSHA-256でハッシュされます。鍵ファイルに正確に32バイト(256ビット)が含まれていない場合、それらもSHA-256でハッシュされ、256ビットの鍵が形成されます。上記の式は、SHA-256(SHA-256(password)、SHA-256(key file contents))に変わります。

あなたのパスワードが少し弱くなる(そしてあなたの記憶にとってより良い)と思うなら、
キーファイルは、2番目の要素として適切です
そのため、(一緒に)両方を使用します。

17
nik

重要なのは、パスワードを安全に保つことです。そのため、これは非常に簡単です。パスワードです。キーファイルを使用していて、パスワードデータベースの制御を失うと、パスワードはすべて公開されます。

5
jasonh

両方を使う。キーファイルをフラッシュドライブに保管し、いつでも持ち歩けます。しかし、デスクトップのどこにもありません(付箋にパスワードを書き込むのと同じです)。私は暗号化されたHDDパーティション(truecryptを使用)にこの方法を使用しています。したがって、誰かがまだ何らかの形でパスワードを取得している場合、キーファイルも必要です。

1
Pawka

パスワード管理の初心者向け:
パスワードのみ
なぜ?
これにより、ファイルの(誤)管理に関する懸念が半分になり、1つのファイルに制限されます。
KeepassX .kdbx dbは、64文字の混合パスワードで保護できます。これは、長くて安全なパスワードを作成するための十分な範囲です。
これは、(頭の中で)(強力な)パスワードがprimaryフォーカス(キーファイルなどを保存した場所ではない)であることを強調するのに役立ちます。
パスワードの記憶に問題がある場合(もちろん、すべての人が行っています)、パスワードマネージャー(KeepassXなど)を使用してください。

0
dotnetspec