Cifrado de datos · 11 min read · Jan 04, 2026

Tutorial de TrueCrypt: Cifrado de Datos Verdaderamente Portátil

Tutorial de TrueCrypt: Cifrado de Datos Verdaderamente Portátil

Una breve presentación de las funciones del programa

TrueCrypt es un software gratuito que cifra datos “al vuelo”. En este momento, la versión más nueva lanzada es la versión 4.3. Puedes crear un disco duro cifrado, una partición separada o un directorio con TrueCrypt. No solo cifra el contenido de los archivos, sino también sus nombres y los nombres de los directorios en los que se encuentran. Además, no hay forma de comprobar el tamaño del directorio/HDD/partición cifrada. TrueCrypt está disponible para Windows y Linux.

Ventajas de TrueCrypt:

  • crea un disco duro cifrado y lo monta,
  • cifra un disco completo, partición/directorio seleccionado e incluso una memoria USB,
  • el cifrado es automático, al vuelo y transparente para el usuario
  • no hay forma de comprobar el tamaño de la partición/directorio cifrado,
  • utiliza algoritmos de cifrado como: AES -256, Serpent, Twofish,
  • permite la creación de un volumen oculto,
  • en uso no puedes distinguir entre el volumen creado y los datos comunes,
  • es muy simple de usar,
  • los discos virtuales creados con TrueCrypt son completamente independientes del sistema operativo,
  • las claves de autorización pueden guardarse en una memoria USB.
  • y mucho más…

Hay tres formas de asegurar los datos cifrados:

  • con una contraseña,
  • con una clave especial,
  • con una contraseña y una clave.

¿Qué es esta clave? La clave puede ser cualquier archivo de tu disco duro, por ejemplo: *.avi, *.mpg o *.txt e incluso un directorio completo que contenga algunos archivos. ¡Advertencia! Ten cuidado al usar un archivo *.txt como clave porque si lo modificas, la clave cambiará y no podrás descifrar tus datos. ¿Qué sucede cuando pierdes tu clave? ¡Nunca recuperarás tus datos! Por eso sugiero usar ambos, la clave y la contraseña como la mejor opción. En este caso, si pierdes tu clave, puedes cambiarla ingresando la contraseña correcta, y viceversa. Naturalmente, no hay una solución ideal porque puedes olvidar tu contraseña y perder tu clave al mismo tiempo.

Una breve comparación de TrueCrypt y DM-Crypt

De hecho, es muy difícil decir cuál de estos programas es mejor. Después de una laboriosa revisión de las descripciones de sus opciones y deliberaciones sobre ambos, me di cuenta de que la mejor solución sería combinar ambos. Ambos te permiten crear un llamado “contenedor” que es un archivo cifrado que funciona como un directorio en el que puedes almacenar tus archivos privados (una característica muy útil cuando no deseas cifrar toda la partición). La gran ventaja de estos programas es que pueden cifrar datos mientras los grabas en un CD/DVD. Un pequeño inconveniente de TrueCrypt puede ser que después de reiniciar el kernel, es posible que debas instalar el módulo de TrueCrypt nuevamente. Por otro lado, en TrueCrypt puedes usar simultáneamente diferentes algoritmos de cifrado. También funciona en Windows, así que si usas ambos sistemas, TrueCrypt será una mejor opción.

¿Cómo elegir la mejor clave?

Personalmente, no recomiendo elegir ningún archivo o directorio de tu disco duro como clave. La mejor manera será usar un generador de claves especial integrado en TrueCrypt. RNG - Generador de Números Aleatorios - es la función, crea algunos datos aleatorios con un tamaño máximo de 320 bytes y los guarda en un archivo previamente elegido. ¿Cómo se generan los datos aleatorios? Si es Linux, RNG utiliza /dev/random o /dev/urandom que representa todo el ruido generado por los dispositivos conectados a tu PC, como el ratón y el teclado.

¿Cómo funciona TrueCrypt?

Todo el proceso de cifrado es transparente para el usuario. Al copiar un archivo en el disco cifrado, sus fragmentos constitutivos (si es un archivo grande como una película) se copian en la RAM, luego se cifran y se guardan en el archivo de destino. El proceso de descifrado es el mismo. Primero, el archivo, por fragmentos, se descifra en la RAM y luego se pasa al usuario. TrueCrypt nunca guarda datos sin cifrar en el disco, los datos cifrados siempre se almacenan en la RAM. Este es un método muy seguro que previene el acceso accidental a tus archivos.

Descarga de TrueCrypt

La versión más nueva del programa siempre la encontrarás en http://www.truecrypt.org. TrueCrypt necesita una herramienta llamada dmsetup para funcionar correctamente. Dmsetup es una herramienta que te permite trabajar con discos lógicos mapeados con el controlador de dispositivo-mapper. La versión más nueva de dmsetup está disponible en http://sources.redhat.com/dm/. Lo primero que debes hacer después de descargar la fuente es instalar dmsetup:

tar -zxvf device-mapper.*tu_número_de_versión*
cd device-mapper.*tu_número_de_versión*
./configure
make
make install (como root o sudo)

Si todo ha ido bien, intenta instalar TrueCrypt:

tar -zxvf truecrypt-*tu_número_de_versión*
cd truecrypt-*tu_número_de_versión*

Entra en el directorio linux e instala:

cd linux
./build.sh
Comprobando requisitos de construcción...
Construyendo módulo del kernel... Hecho.
Construyendo truecrypt... Hecho.

Primero, el script comprobará si tu sistema cumple con todos los requisitos, te mostrará información si no puede encontrar la ubicación de un paquete. ¡Advertencia! Para instalar TrueCrypt correctamente, debes tener un kernel 2.6.5 o más reciente.

A continuación, ejecutas:

./install.sh *(como root o sudo)*

Comprobando requisitos de instalación… Probando truecrypt… Hecho.

Instalar binarios en [/usr/bin]: presiona [Enter] Instalar página de manual en [/usr/share/man]: presiona [Enter] Instalar guía de usuario y módulo del kernel en [/usr/share/truecrypt]: [Enter] Permitir que usuarios no administradores ejecuten TrueCrypt [y/N]: para permitir que usuarios no root usen TrueCrypt presiona [y], de lo contrario [N] Instalando módulo del kernel… Hecho. Instalando truecrypt en /usr/bin… Hecho. Instalando página de manual en /usr/share/man/man1… Hecho. Instalando guía de usuario en /usr/share/truecrypt/doc… Hecho. instalando módulo de kernel de respaldo en /usr/share/truecrypt/kernel… Hecho.

Si todo ha procedido como arriba, puedes continuar.

La generación de claves

Para generar una clave escribe:

truecrypt --keyfile-create key.txt

Por supuesto, puedes elegir otro nombre de clave y la extensión.

¿Está tu ratón conectado directamente a la computadora donde se está ejecutando TrueCrypt? Presiona “Y”, luego se te pedirá que muevas tu ratón.

Si todo estuvo bien, se mostrará el siguiente texto: Archivo de clave creado.

La creación de un volumen virtual

Para crear un nuevo volumen debes considerar su nombre y tipo. Solo hay dos tipos de volumen: normal y oculto. ¿Cuál es la diferencia entre ellos? El oculto es precisamente eso, oculto (la ubicación es diferente - más información en la página de inicio de TrueCrypt).

En una terminal escribe:

truecrypt -c home.txt

Creas un volumen llamado home.txt. La extensión queda a discreción del usuario, yo he elegido *.txt, porque es más difícil para un posible hacker descubrir que es un volumen.

Tipo de volumen:

  1. Normal
  2. Oculto
    Selecciona [1]: selecciona 1

Sistema de archivos:

  1. FAT
  2. Ninguno
    Selecciona [1]: selecciona 2, porque crearás otro sistema de archivos que no sea FAT
    en tu volumen, el predeterminado es FAT

Ingresa el tamaño del volumen (bytes - tamaño/tamañoK/tamañoM/tamañoG): 10M -
ahora indicas un tamaño para tu volumen, he elegido 10 MB

Algoritmo de hash:

  1. RIPEMD-160
  2. SHA-1
  3. Whirlpool
    Selecciona [1]: elige hash, sugiero SHA-1, el predeterminado es RIPEMD-160

Algoritmo de cifrado:
1 ) AES
2 ) Blowfish
3 ) CAST5
4 ) Serpent
5 ) Triple DES
6 ) Twofish
7 ) AES-Twofish
8 ) AES-Twofish-Serpent
9 ) Serpent-AES
10 ) Serpent-Twofish-AES
11 ) Twofish-Serpent Selecciona [1]: elige el algoritmo, el predeterminado es AES

Ingresa la contraseña para el nuevo volumen ‘home.txt’: presiona [Enter] si no deseas ninguna contraseña

Reingresa la contraseña: presiona [Enter] nuevamente

Ingresa la ruta del archivo clave [ninguna]: aquí ingresa una ruta completa a la clave o deja vacío si no tienes ninguna clave

Ingresa la ruta del archivo clave [finalizar]: se te pedirá nuevamente que ingreses la ruta. En caso de que tengas más de una clave, escribe otra ruta, y si has ingresado todas las rutas de clave, deja vacío y presiona [Enter]

TrueCrypt ahora recogerá datos aleatorios.

¿Está tu ratón conectado directamente a la computadora donde se está ejecutando TrueCrypt? Presiona “Y” si tu ratón está directamente conectado a tu PC, pero intenta presionar “n” y ve qué sucede

Por favor, escribe al menos 320 caracteres elegidos aleatoriamente y luego presiona Enter: si ingresas menos de lo requerido, el programa te mostrará cuántos faltan

Ahora el programa comenzará a crear tu volumen. El tiempo necesario para esta operación depende de tu CPU y el tamaño del volumen. El script te informará cuando esté completo ( Volumen creado). En el directorio home del root debería haber un archivo home.txt. Puedes intentar abrirlo en un procesador de texto, mis felicitaciones si logras leer algo de él.

Mapeo de volúmenes y creación del sistema de archivos.

Como recordarás, no elegiste el sistema de archivos para tu volumen durante el proceso de creación. Por eso, debes hacerlo ahora. Esto es necesario porque TrueCrypt utiliza la herramienta de Linux mount para montar un volumen, la cual necesita que se le pase un sistema de archivos como opción.

Ingresa:

truecrypt /root/home.txt -k /root/key

Ingresa la contraseña para ‘/root/home.txt’: si no hay contraseña para este volumen, solo presiona [Enter]

OK. Para comprobar si el mapeo ha ido bien, escribe:

truecrypt -vl

(muestra información sobre dispositivos mapeados)

Si no hay información, significa que algo ha salido mal.

Ahora creas un sistema de archivos:

mkfs.ext3 /dev/mapper/truecrypt0

Puedes elegir cualquier sistema de archivos

El sistema de archivos ha sido creado.

Montando volúmenes creados

Ahora que has creado un sistema de archivos en tu volumen y lo has mapeado, puedes montarlo en cualquier directorio.

Para hacer esto, escribe:

truecrypt -d /dev/mapper/truecrypt0

desmapea el volumen

mkdir encrypted -

crea un directorio llamado “encrypted”, este es el directorio donde vas a montar el volumen

truecrypt /root/home.txt -k /root/key /root/encrypted

monta el volumen en los directorios encriptados

¡Hecho! A partir de ahora, todos los datos guardados en el directorio “encrypted” estarán cifrados.

Pero, ¿qué debes hacer para cifrar un directorio ya existente? Esto es muy simple. Simplemente mueve los datos de este directorio, luego monta el volumen en este directorio y mueve los datos de vuelta a este directorio. Recuerda hacer que el volumen sea adecuadamente grande al indicar su tamaño, porque de lo contrario no acomodará todos los datos. El tamaño del volumen debe ser un poco más grande que el tamaño del directorio.

Montaje automático después del reinicio.

Como descubrirás, después de un reinicio tendrás que montar el volumen nuevamente. Hay una forma simple de hacerlo. Navegando por un foro en la página de inicio de TrueCrypt, encontré dos soluciones diferentes:

  • agregar un script a /etc/init.d o /etc/rc.d,
  • crear en el directorio home un archivo de configuración llamado .profile y editarlo adecuadamente.

Te sugiero que uses la segunda forma que describo a continuación. ¿Por qué? Hay una razón simple. Supongamos que aseguraste el volumen con una clave y una contraseña o incluso solo con una contraseña. En este caso, al ejecutar scripts de inicio ubicados en los directorios init.d o rc.d, tendrás que inicializar TrueCrypt con el parámetro -p y la contraseña estaría explícitamente escrita allí, lo cual no es la solución más inteligente. De esta manera, cualquiera podría leer tu contraseña.

Quizás ya haya un archivo .profile en tu directorio home, pero si no:

touch .profile - crea un nuevo archivo .profile

Abre .profile en un editor y agrega la siguiente línea:

truecrypt /root/home.txt -k /root/key /root/encrypted

Guarda los cambios y cierra el editor. Ahora, cada vez que inicies sesión en el sistema, TrueCrypt te pedirá tu contraseña (que no tienes porque en este ejemplo solo estás identificado por la clave, así que solo presiona [Enter]) y el volumen virtual será montado.

¿Puedo mantener la clave en un pendrive/memoria USB?

Sí, hay tal opción, y puedes creerme que no es tan difícil. Lo primero que debes hacer es montar automáticamente la unidad USB al inicio. Para hacer esto, debes editar /etc/fstab. Luego crea un nuevo directorio para el pendrive en /mnt:

mkdir /mnt/pendrive

Primero debes ver dónde está el pendrive en el sistema. Conecta el pendrive al puerto USB y ejecuta el siguiente comando:

dmesg > output.txt

Al final del archivo debería haber una línea como esta:

usb 1-1: configuración #1 elegida de 1 opción
uba: uba1

Como puedes ver en mi PC, la unidad USB está en /dev/uba1. Puede que la tengas en /dev/sda*. Ahora debes modificar /etc/fstab. Agrega esta línea:

/dev/uba1  /mnt/pendrive  auto  defaults  0  0

Luego escribe:

mount /mnt/pendrive

El siguiente paso es mover la clave a la unidad USB y cambiar la línea en tu archivo .profile que contiene la ruta a la clave /mnt/pendrive. ¡Hecho!

Ahora el sistema monta automáticamente el volumen virtual después del reinicio. ¿Cuáles son las desventajas del montaje automático? Supongamos que tienes un hermano muy curioso y no quieres que tenga acceso a algunas partes de tu sistema (independientemente de si trabajas en Windows o Linux). Si te autorizas solo con la clave, y esta está colocada en algún lugar del HDD, entonces después del arranque los datos se descifran. “Pero tengo mi clave en la unidad USB”. ¿Qué pasa si olvidas sacarla de la PC después de trabajar?

El futuro

En un futuro cercano, los desarrolladores de TrueCrypt planean ampliar sus características:

  • la versión de MAC OS,
  • agregar una autorización exterior (así habrá posibilidad de descifrado a través de la red/Internet),
  • construir una GUI oficial para TrueCrypt,
  • y mucho más…

¿Existen capas GUI no oficiales para TrueCrypt? Por supuesto que sí. Te sugiero que eches un vistazo a la siguiente página web: TruecryptGUI en GoogleCode. Para más información visita el foro de TrueCrypt.

Traducción al inglés: Borys Musielak

Corrección: T_ziel

Autor: Marcin Lipiec aka “lipiec”

Este texto fue publicado por primera vez en polishlinux.org

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.