LUKSを使用したdm-cryptに関して、「パスワードの強化」とはどういう意味ですか?

LUKSを使用したdm-cryptに関して、「パスワードの強化」とはどういう意味ですか?

Fedoraの帽子の紹介ウィキペディアLUKSはこのような保護を提供すると言います。

LUKSはパスワード強化を提供しますが、まだ良い(「推測しにくい」という意味)、パスワードを選択することをお勧めします。

それはまさに何であり、どのように達成されますか?

答え1

同様のフレーズが他の場所にも表示されます(例:このRed Hat 5ページ)、詳細は次のとおりです。

  • LUKSはパスワード強化機能を提供します。

    • これは事前攻撃を防ぎます。

これは、パスワードがソルトされ、適用されるプロセスに対するその他の改善点(たとえば、コストを上げるためにN回のハッシュ)を意味すると思います。

クイックGoogle検索によると、このフレーズは2006年頃のLUKSで初めて登場したようです。ディスク暗号化ソフトウェアの比較に関するWikipediaの記事。 「パスワード強化」の説明があります。「キーストレッチ」に関する記事これには、無差別代入攻撃に対するパスワードの耐性を高めるさまざまな技術が含まれます。PBKDF2。実際、LUKS1はPBKDF2を使用します(LUKS2は代わりにArgon2を使用します)。LUKS FAQによると

この文脈において、パスワードの強化とは、PBKDF2 と同様の方法を使用してパスワードを復号化することを困難にすることを意味する。よくある質問には、次の簡単な説明もあります。

パスワードのエントロピーが低い場合、各試行に時間とリソースがかかり、攻撃者の速度が遅くなるように、このプロセスに少しの労力が必要です。 LUKS1はこのためにPBKDF2を使用して反復回数とソルトを追加します。繰り返し回数は、対応するパスワードが設定されているデバイスのCPUで試行ごとに1秒にデフォルト設定されます。塩は事前計算を防ぐために存在します。

具体的には、LUKSはPBKDF2(1.7.0ベースのSHA256)のハッシュメカニズムとしてSHA1を使用し、約1秒かかるように繰り返し回数を設定します。また、見ることができますFAQセクション5.1:セキュリティパスワードはどのくらい続きますか?dm-cryptでLUKS1でPBKDF2を使用して、大幅に改善された点を比較してみてください。

これは一般的なdm-crypt(ハッシュ反復なし)に対するものです。これは以下を提供します(SHA1を使用すると、一般的なdm-cryptのデフォルトはripmd160であり、SHA1よりわずかに遅いようです)。

Passphrase entropy  Cost to break
60 bit              EUR/USD     6k
65 bit              EUR/USD   200K
70 bit              EUR/USD     6M
75 bit              EUR/USD   200M
80 bit              EUR/USD     6B
85 bit              EUR/USD   200B
...                      ... 

LUKS1の場合は、PBKDF2でハッシュ反復を考慮する必要があります。現在のCPUでは、約100,000回の繰り返しがあります(クエリが利用可能ですcryptsetup luksDump)。上記の表は次のとおりです。

Passphrase entropy  Cost to break
50 bit              EUR/USD   600k
55 bit              EUR/USD    20M
60 bit              EUR/USD   600M
65 bit              EUR/USD    20B
70 bit              EUR/USD   600B
75 bit              EUR/USD    20T
...                      ...

関連情報