Se ha publicado un conjunto de utilidades Cryptsetup 2.7, destinadas a configurar el cifrado de particiones de disco en Linux utilizando el módulo dm-crypt. Se admite el trabajo con particiones dm-crypt, LUKS, LUKS2, BITLK, loop-AES y TrueCrypt/VeraCrypt. También se incluyen utilidades veritysetup e integritysetup para establecer controles de integridad de datos basados en los módulos dm-verity y dm-integrity.
Mejoras clave:
- Se ha implementado la opción de utilizar el mecanismo de cifrado de discos por hardware OPAL, soportado en unidades SATA y NVMe autocifrantes (SED — Self-Encrypting Drives) con interfaz OPAL2 TCG, en las que el dispositivo de cifrado por hardware está integrado directamente en el controlador. Por un lado, el cifrado OPAL está ligado al hardware propietario y no está disponible para auditoría pública, pero, por otro lado, puede utilizarse como un nivel adicional de protección sobre el cifrado por software, sin que ello reduzca el rendimiento ni genere carga en la CPU.
Para utilizar OPAL en LUKS2 se requiere una compilación del núcleo de Linux con la opción CONFIG_BLK_SED_OPAL y la habilitación en Cryptsetup (por defecto el soporte para OPAL está desactivado). La configuración de LUKS2 OPAL se realiza de manera similar al cifrado por software: los metadatos se guardan en el encabezado de LUKS2. La clave se divide en una clave de partición para el cifrado por software (dm-crypt) y una clave de desbloqueo para OPAL. OPAL puede utilizarse tanto en conjunción con el cifrado por software (cryptsetup luksFormat —hw-opal ) como de forma independiente (cryptsetup luksFormat —hw-opal-only ). La activación y desactivación de OPAL se llevan a cabo de la misma forma (open, close, luksSuspend, luksResume) que para dispositivos LUKS2.
- En el modo plain, donde la clave maestra y el encabezado no se almacenan en el disco, se utiliza, por defecto, el cifrado aes-xts-plain64 y el algoritmo de hash sha256 (en lugar del modo CBC, que presenta problemas de rendimiento, se utiliza XTS, y en lugar del obsoleto hash ripemd160, se utiliza sha256).
- En los comandos open y luksResume se permite almacenar la clave de partición en el almacén de claves seleccionado por el usuario en el núcleo (keyring). Para acceder al keyring, se ha añadido la opción «—volume-key-keyring» a muchos comandos de cryptsetup (por ejemplo, ‘cryptsetup open —link-vk-to-keyring «@s::%user:testkey» tst’).
- En sistemas sin partición de intercambio, al formatear o crear un slot de claves para PBKDF Argon2, ahora se utiliza solo la mitad de la memoria libre, lo que resuelve el problema de agotamiento de memoria disponible en sistemas con poca RAM.
- Se ha añadido la opción '—external-tokens-path' para especificar el directorio para los controladores externos de tokens LUKS2 (plugins).
- En tcrypt se ha añadido soporte para el algoritmo de hash Blake2 para VeraCrypt.
- Se ha añadido soporte para el cifrador por bloques Aria.
- Se ha añadido soporte para Argon2 en las implementaciones de OpenSSL 3.2 y libgcrypt, lo que permite prescindir de libargon.
Fuente: opennet.ru
