Доступен Cryptsetup 2.8 с поддержкой Inline-режима хранения метаданных

Опубликован набор утилит Cryptsetup 2.8, предназначенных для настройки шифрования дисковых разделов в Linux при помощи модуля dm-crypt. Поддерживается работа с разделами dm-crypt, LUKS, LUKS2, BITLK, loop-AES и TrueCrypt/VeraCrypt. В состав также входят утилиты veritysetup и integritysetup для настройки контроля целостности данных на основе модулей dm-verity и dm-integrity.

Ключевые улучшения:

  • Добавлена поддержка inline-режима, позволяющего использовать расширенные секторы с дополнительной областью для хранения метаданных контроля целостности. Подобные секторы поддерживаются некоторыми NVMe-накопителями, позволяющими помимо области с данными размещать в секторе и блок метаданных (например, 4096 байт под данные + 64 байт под метаданные).

    При наличии неиспользуемой области метаданных в секторе Cryptsetup теперь может использовать для хранения служебной информации, что избавляет от необходимости задействования дополнительного слоя на базе
    dm-integrity, отвечающего за выделение места под метаданные. Соответственно, можно обойтись без ведения журнала dm-integrity, являющегося узким местом, негативно влияющим на производительность.
    В ядре Linux возможности, необходимые для работы inline-режима, присутствуют начиная с выпуска 6.11. Для включения inline-режима добавлена опция “–integrity-inline”.

  • Доведён до готовности API Keyslot Context для манипуляции со слотами ключей. Новый API позволил расширить функциональность многих существующих команд, такими функциями, как активация токенов, возобновления работы с приостановленным зашифрованным устройством и выполнение повторного шифрования (reencryption).
  • В утилиту cryptsetup добавлены опции “–key-description” и “–new-key-description” для прикрепления описания к ключам.
  • Добавлена возможность возобновления приостановленной операции повторного шифрования (reencryption), используя токен и ключи раздела.
  • В реализацию команды “repair” добавлена проверка повреждения областей со слотами ключей LUKS.
  • В команду veritysetup добавлена опция “–error-as-corruption” при которой любые ошибки обрабатываются как повреждение данных, соответственно можно настроить перезагрузку или переход в состояние panic при ошибках, в случае использования опций “–restart-on-corruption” и “–panic-on-corruption”.
  • Добавлена опциональная возможность использования библиотеки Mbed-TLS в качестве крипто-бэкенда (включается при сборке с опцией “–with-crypto_backend=mbedtls”).
Release. Ссылка here.