web-dev-qa-db-ja.com

dm-crypt / LUKSパスフレーズ/キーファイルの長さ

Dm-crypt/LUKSに関連する質問がいくつかあります。


次の設定でdm-crypt/LUKSを設定します。

cryptsetup -c aes-xts-plain -h sha256 --key-size=256 -y luksFormat /dev/sda1

(1)指定されたキーサイズが256ビットであることを考慮すると、パスフレーズの長さは何文字ですか?そして、何らかの理由でサイズが異なる場合があるのはなぜですか?そして、推奨サイズは何ですか?


これらの設定でキーファイルを使用する場合(または使用可能なスロットにキーファイルを追加する場合):

cryptsetup -c aes-xts-plain -h sha256 --key-size=256 luksFormat /dev/sda1 /path/to/key/file

(2)キーファイルのサイズはどのくらいにする必要がありますか?また、サイズが異なる可能性がある場合、その理由と推奨事項は何ですか?

(3)-key-size = BITS-keyfile-size = bytesの違いは何ですか?

「暗号化キーのサイズ」と「キーファイルからの読み取りを制限する」という意味は知っていますが、それらの間の正確な相互関係はわかりません。

(4)...そして-keyfile-size = bytes-new-keyfile-size = bytesの間?


私はmanページを何度も読み、インターネットを調べてさまざまな記事を読みました。これらは私を混乱させるほんの2、3のことです。

5
Mark

(1)指定されたキーサイズが256ビットであることを考慮すると、パスフレーズの長さは何文字ですか?そして、何らかの理由でサイズが異なる場合があるのはなぜですか?そして、推奨サイズは何ですか?

それは、あなたが合理的に覚えることができ、あなたがタイプすることをいとわない限りでなければなりません。 ハッシュ関数 を介して実行されますが、最初の改行\nの後で読み取りを停止します。ハッシュ関数は、指定した数のテキストを受け取り、結果を表示します。

テキストsuperuser.comのsha256ハッシュは6153a5e4835cfb92fa324bfce5470a0b8d554cadbf7a9fbe21be74460897e021であり、質問の最初のバージョンの本文全体のハッシュはf653459aa401efd1f058de5920cb25fe03bb969c90b001fd0f5282164c8b1afaです。出力が同じ長さであることに注意してください。

(2)キーファイルのサイズはどのくらいにする必要がありますか?また、サイズが異なる可能性がある場合、その理由と推奨事項は何ですか?

通常、LUKSは、実際に必要なファイルのデータ量のみを使用します。したがって、1GBのファイルを使用でき、key-size = 256の場合、最初の256ビットのみが使用されます。したがって、キーファイルは少なくともキーサイズの値と同じ大きさである必要がありますが、それよりも大きい場合があります。 dd if=/dev/random of=/../mykeyfile bs=4096 count=1のようなコマンドを使用して4096バイトのキーファイルを作成する傾向があります。これにより、必要以上のデータが得られますが、それでも比較的小さなファイルです。

(3)-key-size = BITSと--keyfile-size = bytesの違いは何ですか?

実行しているcryptsetupのバージョンがわかりません。keyfile-sizeオプションが新しいようです。この page に関する注記は、LUKSにファイルからより多くのデータを読み取らせるために存在することを示唆しているようです。私は暗号化の専門家ではありませんが、キーファイルが本当にランダムなデータである場合、ハッシュ関数にフィードするためにキーファイルからより多くのデータを取得しても、実際には安全性が向上しないと思います。ランダムデータでいっぱいではないファイルを使用している場合、これは役立つかもしれませんが、よくわかりません。

4
Zoredache