stringtranslate.com

Criptografía DM

dm-crypt es un subsistema de cifrado de dispositivos de bloques transparente en las versiones 2.6 y posteriores del kernel de Linux y en DragonFly BSD . Es parte de la infraestructura del mapeador de dispositivos (dm) y utiliza rutinas criptográficas de la API Crypto del kernel . A diferencia de su predecesor cryptoloop , dm-crypt fue diseñado para soportar modos avanzados de operación, como XTS , LRW y ESSIV , con el fin de evitar ataques de marca de agua . [1] Además de eso, dm-crypt soluciona algunos problemas de confiabilidad de cryptoloop. [2]

dm-crypt se implementa como un objetivo de mapeo de dispositivos y se puede apilar sobre otras transformaciones de mapeo de dispositivos. De esta manera, puede cifrar discos completos (incluidos medios extraíbles ), particiones , volúmenes RAID de software , volúmenes lógicos y archivos . Aparece como un dispositivo de bloque, que se puede utilizar para respaldar sistemas de archivos , intercambio o como un volumen físico LVM .

Algunas distribuciones de Linux admiten el uso de dm-crypt en el sistema de archivos raíz. Estas distribuciones utilizan initrd para solicitar al usuario que ingrese una frase de contraseña en la consola o que inserte una tarjeta inteligente antes del proceso de arranque normal. [3]

Interfaces

El objetivo del mapeador de dispositivos dm-crypt reside completamente en el espacio del núcleo y solo se ocupa del cifrado del dispositivo de bloque  ; no interpreta ningún dato por sí mismo. Se basa en interfaces de usuario para crear y activar volúmenes cifrados y administrar la autenticación. Actualmente hay al menos dos interfaces disponibles: y .cryptsetupcryptmount

configuración de cifrado

La cryptsetupinterfaz de línea de comandos, de manera predeterminada, no escribe ningún encabezado en el volumen cifrado y, por lo tanto, solo proporciona lo esencial: las configuraciones de cifrado se deben proporcionar cada vez que se monta el disco (aunque generalmente se emplean con scripts automatizados) y solo se puede usar una clave por volumen; la clave de cifrado simétrico se deriva directamente de la frase de contraseña suministrada .

Debido a que carece de una " sal ", el uso de cryptsetup es menos seguro en este modo que en el caso de Linux Unified Key Setup (LUKS). [9] Sin embargo, la simplicidad de cryptsetup lo hace útil cuando se combina con software de terceros, por ejemplo, con autenticación de tarjeta inteligente .

cryptsetupTambién proporciona comandos para manejar el formato LUKS en disco. Este formato proporciona funciones adicionales como administración de claves y ampliación de claves (mediante PBKDF2 ), y recuerda la configuración del volumen cifrado después de reiniciar. [3] [10]

cripta de montaje

La cryptmountinterfaz es una alternativa a la herramienta "cryptsetup" que permite a cualquier usuario montar y desmontar un sistema de archivos dm-crypt cuando sea necesario, sin necesidad de privilegios de superusuario después de que el dispositivo haya sido configurado por un superusuario.

Características

El hecho de que el software de cifrado de discos (cifrado de volúmenes) como dm-crypt solo se ocupe del cifrado transparente de dispositivos de bloques abstractos le otorga mucha flexibilidad. Esto significa que se puede utilizar para cifrar cualquier sistema de archivos respaldado por discos compatible con el sistema operativo , así como el espacio de intercambio ; se conservan las barreras de escritura implementadas por los sistemas de archivos. [11] [12] Los volúmenes cifrados se pueden almacenar en particiones de disco , volúmenes lógicos , discos completos, así como imágenes de disco respaldadas por archivos (a través del uso de dispositivos de bucle con la utilidad losetup). dm-crypt también se puede configurar para cifrar volúmenes RAID y volúmenes físicos LVM .

dm-crypt también se puede configurar para proporcionar autenticación previa al arranque a través de un initrd , cifrando así todos los datos de una computadora, excepto el gestor de arranque, el kernel y la propia imagen initrd. [3]

Al utilizar el modo de operación de encadenamiento de bloques de cifrado (CBC) con vectores de inicialización predecibles como otro software de cifrado de disco, el disco es vulnerable a ataques de marca de agua . Esto significa que un atacante puede detectar la presencia de datos especialmente diseñados en el disco. Para abordar este problema en sus predecesores, dm-crypt incluyó disposiciones para modos de operación más elaborados y específicos del cifrado de disco. [1] El soporte para ESSIV (vector de inicialización de sector de sal cifrado) se introdujo en la versión 2.6.10 del kernel de Linux, LRW en 2.6.20 y XTS en 2.6.24. Un algoritmo de cifrado de disco de bloque ancho , Adiantum , se agregó en 5.0, y su primo basado en AES HCTR2 en 6.0.

La API de Linux Crypto incluye soporte para los cifrados de bloque y funciones hash más populares , todos ellos utilizables con dm-crypt.

El soporte de sistemas de archivos cifrados incluye volúmenes LUKS (versiones 1 y 2), loop-AES, TrueCrypt / VeraCrypt (desde el kernel de Linux 3.13), [13] [14] [15] y NTFS cifrado con BitLocker (desde cryptsetup 2.3.0). [16] El soporte de TrueCrypt/VeraCrypt (TCRYPT) y BitLocker (BITLK) requiere la API de cifrado del espacio de usuario del kernel. [17]

Compatibilidad

Se puede acceder y utilizar discos cifrados con dm-crypt y LUKS en MS Windows mediante el ahora extinto FreeOTFE (anteriormente DoxBox, LibreCrypt), siempre que el sistema de archivos utilizado sea compatible con Windows (por ejemplo, FAT /FAT32/ NTFS ). Los sistemas de archivos cifrados ext2 y ext3 son compatibles con Ext2Fsd o el denominado "Sistema de archivos instalable Ext2 para Windows"; [18] FreeOTFE también los admite.

Cryptsetup/LUKS y la infraestructura necesaria también se han implementado en el sistema operativo DragonFly BSD. [19]

Véase también

Referencias

  1. ^ ab Fruhwirth, Clemens (18 de julio de 2005). "Nuevos métodos de cifrado de discos duros" (PDF) . Universidad Tecnológica de Viena . Consultado el 22 de agosto de 2024 .
  2. ^ Peters, Mike. "Encriptación de particiones usando dm-crypt y el kernel de la serie 2.6". Linux.com . Archivado desde el original el 11 de julio de 2012. Consultado el 22 de agosto de 2024 .
  3. ^ abc W. Michael Petullo (18 de enero de 2007). "Cifrado de disco en Fedora: pasado, presente y futuro". Revista Red Hat. Archivado desde el original el 10 de octubre de 2008. Consultado el 20 de abril de 2007 .
  4. ^ "AUTORES". GitLab . Consultado el 7 de septiembre de 2019 .
  5. ^ abcd "docs · master · cryptsetup / cryptsetup". GitLab . Consultado el 21 de diciembre de 2023 .
  6. ^ "El dominio textual de cryptsetup". Proyecto de traducción . Consultado el 7 de septiembre de 2019 .
  7. ^ "COPIANDO". GitLab . Consultado el 7 de septiembre de 2019 .
  8. ^ "COPYING.LGPL". GitLab . Consultado el 7 de septiembre de 2019 .
  9. ^ "Preguntas frecuentes sobre cryptsetup".
  10. ^ Clemens Fruhwirth (15 de julio de 2004). "TKS1: un esquema de configuración de claves iterado, de dos niveles y antiforense" (PDF) . Borrador . Consultado el 12 de diciembre de 2006 .
  11. ^ Milan Broz (24 de abril de 2012). "[dm-crypt] ¿Admite dm-crypt garantías transaccionales del sistema de archivos con registro en diario?". saout.de . Consultado el 8 de julio de 2014 .
  12. ^ Mikulas Patocka (22 de junio de 2009). "kernel/git/torvalds/linux.git". Árbol de código fuente del kernel de Linux . kernel.org . Consultado el 8 de julio de 2014 .
  13. ^ "dm-crypt: generadores de IV para el mapeador de dispositivos del kernel de Linux". cryptsetup. 2014-01-11 . Consultado el 2015-04-05 .
  14. ^ "dm-crypt: destino criptográfico del asignador de dispositivos del kernel de Linux" . Consultado el 5 de abril de 2015 .
  15. ^ "[dm-devel] [PATCH 2/2] dm-crypt: Agregar modo TCW IV para contenedores CBC TCRYPT antiguos". redhat.com . Consultado el 17 de junio de 2014 .
  16. ^ Trefny, Vojtech (25 de enero de 2020). Cifrado de disco BitLocker en Linux (PDF) . DevConf CZ.
  17. ^ cryptsetup(8)  –  Manual del programador de Linux – Administración y comandos privilegiados
  18. ^ "Ext2 ​​IFS para Windows". fs-driver.org . Consultado el 15 de febrero de 2015 .
  19. ^ Alex Hornung (23 de julio de 2010). "ATENCIÓN: dm, lvm, cryptsetup e initrd en el master".

Enlaces externos