Насколько безопасен LUKS dm-crypt, если ключ хранится с зашифрованными данными? [...] Достаточно ли ключевой фразы для ее защиты?
Да, это так, если вы выбираете достаточно сильный пароль. В идеале, пароль должен быть таким же сильным, как (симметричный) ключ. В настоящее время минимальная рекомендация - использовать 128 бит, поэтому в идеале вы должны использовать 128-битную фразу-пароль. Как долго это будет на практике, зависит от того, как вы генерируете свой ключ.
- Если вы используете случайный список строчных букв, заглавных букв (az) и цифр, каждый символ даст вам примерно 2 (62) = ~ 5,95 бита энтропии, поэтому вам потребуется 22 символа, например:
asl3486nysdllk23bh2jl4
. Безопасно, но довольно сложно запомнить ...
- Если вы используете список случайных слов, это зависит от размера списков слов. Например, если вы используете
american-english
файл из пакета wamerican Debian: файл содержит около 99 000 слов, поэтому каждое слово дает вам log2 (99 000) = 16,6 битов энтропии, то есть вам потребуется восемь слов . Например: orthogonal Seoul Pygmalion's abuse flints yachtsman's classicists outsource
. Все еще не приятно, но, вероятно, лучше, чем решение выше ...
Если вы выберете более короткую фразу-пароль, то да, безопасность будет снижена (хотя она все еще может быть приемлемой). Обратите внимание, что LUKS использует алгоритм растягивания ключа, чтобы сделать даже "слабый" ключ более устойчивым к атакам. Тем не менее, существуют некоторые атаки против него, поэтому в идеале вы все равно должны выбрать 128-битную фразу-пароль.
Если безопасно хранить ключ с зашифрованным разделом / контейнером, могу ли я считать, что резервные копии заголовков LUKS также можно рассматривать как обычные файлы, а не как секретные данные?
Да, это правильно. Резервные копии заголовка содержат ключ, но он защищен парольной фразой.