Ключевые улучшения:
- Реализована возможность использования аппаратного механизма шифрования дисков OPAL, поддерживаемого на cамошифруемых (SED — Self-Encrypting Drives) накопителях SATA и NVMe с интерфейсом OPAL2 TCG, в которых устройство аппаратного шифрования встроено непосредственно в контроллер. С одной стороны шифрование OPAL завязано на проприетарное оборудование и не доступно для публичного аудита, но, с другой стороны, может использоваться как дополнительный уровень защиты над программным шифрованием, не приводящий к снижению производительности и не создающий нагрузку на CPU.
Для использования OPAL в LUKS2 требуется сборка ядра Linux с опцией CONFIG_BLK_SED_OPAL и включение в Cryptsetup (по умолчанию поддержка OPAL отключена). Настройка LUKS2 OPAL осуществляется по аналогии с программным шифрованием — метаданные сохраняются в заголовке LUKS2. Ключ разделяется на ключ раздела для программного шифрования (dm-crypt) и ключ разблокировки для OPAL. OPAL может использоваться как вместе с программным шифрованием (cryptsetup luksFormat —hw-opal ‹device›), так и отдельно (cryptsetup luksFormat —hw-opal-only ‹device›).
Активация и деактивация OPAL производится тем же способом (open, close, luksSuspend, luksResume), что и для устройств LUKS2. - В plain-режиме, при котором мастер-ключ и заголовок не хранятся на диске, по умолчанию задействован шифр aes-xts-plain64 и алгоритм хэширования sha256 (вместо режима CBC, имеющего проблемы с производительностью, задействован XTS, а вместо устаревшего хэша ripemd160 — sha256).
- В командах open и luksResume разрешено хранение ключа раздела в выбранном пользователем хранилище ключей в ядре (keyring). Для обращения к keyring во многие команды cryptsetup добавлена опция «—volume-key-keyring» (например ‘cryptsetup open ‹device› —link-vk-to-keyring «@s::%user:testkey» tst’).
- На системах без раздела подкачки при выполнении форматирования или создания слота ключей для PBKDF Argon2 теперь используется только половина свободной памяти, что решило проблему с исчерпанием доступной памяти на системах с небольшим объёмом ОЗУ.
- Добавлена опция «—external-tokens-path» для указания каталога для внешних обработчиков токенов LUKS2 (плагинов).
- В tcrypt добавлена поддержка алгоритма хэширования Blake2 для VeraCrypt.
- Добавлена поддержка блочного шифра Aria.
- Добавлена поддержка Argon2 в реализациях OpenSSL 3.2 и libgcrypt, что позволяет обойтись без использования libargon.
Источник: http://www.opennet.ru/opennews/art.shtml?num=60493