Проблема с алгоритмом шифрования "aes256"
Я использую этот метод для шифрования внешнего жесткого диска, но существует проблема с псевдонимом алгоритма aes.
sudo modprobe dm-crypt
sudo modprobe sha256
sudo modprobe aes
Я получаю следующую ошибку после команды aes
modprobe: ERROR: could not insert 'padlock_aes': No such device
Я попробовал обходной путь, упомянутый в ссылке, но в моем каталоге /etc/modprobe.d/ нет файла псевдонимов
user@user:/home/$ cd /etc/modprobe.d/
user@user:/etc/modprobe.d$ ls | grep aliases
user@user:/etc/modprobe.d$ [no output]
Я не знаю, как с этим справиться, но потом, когда я попытался зашифровать диск, он был успешно зашифрован с помощью следующей команды
sudo cryptsetup --verify-passphrase luksFormat /dev/sdb1 -c aes -s 256 -h sha256
Я не знаю, как он нашел алгоритм aes256, или просто проигнорировал aes256, или сделал что-то магическое.
Поэтому я хочу получить ответ на следующие вопросы
- Как crypt-setup смог успешно зашифровать мой диск?
Как подтвердить, что aes256 также реализован в том шифровании, которое выполняется crypt-setup?
Почему у меня нет
/etc/modprobe.d/alaises
файл? Это связано с более новой версией? так как решение было в последний раз проверено на версии 10.04.
1 ответ
Общее предупреждение заранее: не меняйте вручную cryptsetup
параметры с параметрами, такими как -c
(--cipher
), -s
(--key-size
) а также -h
(--hash
). Значения по умолчанию, как правило, достаточно нормальные, и если вы не знаете, что делаете, вы можете выбрать худшие параметры.
Эти значения по умолчанию показаны с cryptsetup --help
, Для справки: в Ubuntu 16.04 с cryptsetup 1.7.2 значения по умолчанию:
LUKS1: aes-xts-plain64, ключ: 256 бит, хэширование заголовка LUKS: sha1, RNG: /dev/urandom
В Arch Linux с cryptsetup 1.7.2 значения по умолчанию:
LUKS1: aes-xts-plain64, ключ: 256 бит, хэширование заголовка LUKS: sha256, RNG: /dev/urandom
Связанные вами инструкции были написаны для версии Ubuntu, выпущенной в 2010 году. В настоящее время (и, возможно, даже тогда) вам не нужно вручную загружать модули ядра для настройки полного шифрования диска. Они автоматически загружаются при cryptsetup
вызывается.
В контексте модулей ядра Linux aes
name- это имя модуля и псевдоним для нескольких возможных реализаций. Есть один общий aes
модуль, который встроен в образ ядра. Тогда есть альтернативные, более быстрые реализации, которые зависят от некоторых аппаратных или процессорных возможностей (например padlock-aes
а также aesni-intel
).
Даже если эти модули с аппаратным ускорением не могут быть загружены, все еще существует запасной вариант к общей реализации AES, поэтому cryptsetup
все еще могу использовать это.
Чтобы подтвердить, что шифрование AES256 действительно используется, вы можете использовать cryptsetup luksDump /dev/sdb1
команда, которая показывает что-то вроде:
...
Cipher name: aes
Cipher mode: xts-plain64
Hash spec: sha256
Payload offset: 4096
MK bits: 256
Здесь вы можете видеть, что шифр AES использовался с использованием хеш-функции SHA256 для получения пароля. Размер ключа составляет 256 бит (поэтому вы действительно используете AES256).
На ваш последний вопрос (почему у вас нет /etc/modprobe/aliases
файл), этот файл не существует в последних версиях Ubuntu.