Onde gardas os teus PDFs importantes, os teus certificados dixitais ou incluso a túa base de datos local de contrasinais? Que pasa se perdes o teu portátil ou, aínda peor, se cho rouban?

Neste artigo vou tratar a criptografía e vou propoñer unha solución para encriptar o teu pincho USB para ocultar os teus segredos de fisgóns. O USB pode usarse como almacenamento principal dos teus arquivos, pero tamén pode servir como unha copia de seguridade fóra de liña para os teus ficheiros confidenciais.

Que é a criptografía?

Aquí a miña definición simple de criptografía. En poucas palabras, asumindo que sabemos unha clave secreta (normalmente un contrasinal), encriptar é o proceso de usar esta clave para transformar algún mensaxe (coñecido por texto en claro ou ciphertext) a unha representación alternativa (coñecida como texto cifrado ou ciphertext). Isto é, o texto cifrado non vai ter ningún sentido sen a clave de descifrado.

Termos de criptografía

Termos criptográficos.

Formalmente, un Cifrado Shannon é un par de funcións: E para encriptar e D para desencriptar. Funciona así:

  • E(clave, plaintext) = ciphertext
  • D(clave, ciphertext) = plaintext

Vexamos un exemplo real (compróbao en Cyberchef) para o cifrado RC4:

  • Clave: MySecretKey
  • Plaintext: Secret information.
  • E(MySecretKey,Secret information.) = Ciphertext = Rcµó½ü5Óº¨11fÑÄÇ¿
  • D(MySecretKey, Rcµó½ü5Óº¨11fÑÄÇ¿) = Plaintext = Secret information.

Estou usando criptografía?

A criptografía úsase para garantir a confidencialidade da información. Ninguén pode ler o texto en claro orixinal a partir da versión de texto cifrado sen a clave.

Por exemplo, cando estás usando a túa app de mensaxería favorita ou cando fas compras online a través dun sitio web HTTPS. Isto chámase encriptado de datos en transición. Porén, cando queremos ocultar algunha información que non estamos enviando, senón que estamos gardando no noso disco duro, isto chámase encriptado de datos en repouso.

Sitio web HTTPS

HTTPS usa TLS, un sistema usando criptografía para protexer a túa navegación.

Para expoñer outro exemplo, xa vimos que os contrasinais poden ser almacenados localmente como un arquivo de base de datos dun xestor de contrasinais, almacenado no teu ordenador. Este arquivo de base de datos non se almacena en texto en claro que calquera pode ler, senón nun ficheiro cifrado cun contrasinal forte.

Por que necesito criptografía?

Se aínda non o viches claro, a criptografía farate a única persoa que pode acceder á túa información protexida. Esta información poden ser algúns documentos, fotos ou calquera ficheiro no teu PC. Os teus datos estarán seguros mentres sexas o único/a que sabe o contrasinal para acceder a eles.

Porén, o encriptado de datos en repouso non é comunmente activado polos usuarios. A maioría dos nosos portátiles e PC de escritorio non teñen os seus discos cifrados. Os dispositivos móbiles, digamos os smartphones, son a excepción que confirma a regra. Se estás usando un bloqueo de pantalla no teu móbil, probablemente está cifrando os teus datos.

Mans á obra: cifrando o teu USB

Aínda que explicarei en futuros artigos como activar o cifrado de disco completo para os teus Sistemas Operativos, podemos empezar cifrando o teu pincho USB. Neste exemplo, imos tratar unha solución moi usada en Linux: LUKS.

USB sticks

Pinchos USB.

Coidado! Se olvidas o contrasinal do teu dispositivo LUKS, perderás todos os teus ficheiros. Por iso é seguro!

Por que LUKS?

LUKS (Linux Unified Key Setup) é moi usado para xestionar claves para encriptar particións de disco con dm-crypt en Sistemas Operativos Linux. Neste caso, non imos cifrar unha partición do noso disco do sistema, senón un almacenamento externo como un pincho USB. Isto é moi útil, xa que podes usalo entre calquera Linux para a copia de seguridade ou transferencia fóra de liña de arquivos. Un bo exemplo é gardar as túas claves e certificados electrónicos.

Como encriptar o teu USB con LUKS

Aquí vou mostrar os pasos da interface gráfica para un escritorio GNOME, xunto os comandos de terminal. Estes son os pasos:

1. Comproba os teus dispositivos dispoñibles

Graficamente, podes usar a utilidade Discos, dispoñible en GNOME.

Comprobando dispositivos dispoñibles

Paso 1: Comproba os teus dispositivos dispoñibles. Neste exemplo, vou usar unha partición dun pincho USB.

fdisk -l

2. Formatea o teu pincho USB

coidado! –> Isto vai eliminar todos os teus ficheiros do pincho USB.

Formateando un pincho USB

Paso 2: Formatea o teu pincho USB cunha táboa de particións MBR.

sudo umount /dev/sdXX
sudo mkdosfs -F 32 -I /dev/sdXX

3. Crea unha partición LUKS cun sistema de ficheiros ext4

LUKS partition

Paso 3: Crea unha nova partición: LUKS con ext4.

Contrasinal LUKS

Step 3: Especifica o contrasinal para LUKS.

sudo cryptsetup -y -v luksFormat /dev/sdXX
sudo cryptsetup open /dev/sdXX cryptroot
sudo mkfs.ext4 /dev/mapper/cryptroot
sudo mount /dev/mapper/cryptroot /mnt
  1. Simplemente, úsao!

Usando o teu USB: compatibilidade

Para usar o teu pincho USB, simplemente enchúfao e vaiche preguntar polo contrasinal cando o sistema tenta montalo. Despois, podes usalo como o usarías normalmente con calquera outro almacenamento externo. Cando remates, expulsa o teu dispositivo (desmóntao) e vas ter todos os teus ficheiros en repouso cifrados.

Usa a partición LUKS

Diálogo preguntando polo teu contrasinal ao montar a túa partición LUKS.

No terminal, necesitarías algo deste estilo:

sudo cryptsetup open /dev/sdXX cryptroot
sudo mount /dev/mapper/cryptroot /mnt

Isto debería ser compatible con case todas as distribucións Linux. Porén, non hai soporte confiable e actual para Windows. Se buscas por Internet, encontrarás algún software antigo e sen manter que che permite montar LUKS no sistema operativo de Microsoft. Vou tratar na entrada da semana que vén un cifrado de Código Aberto que tamén funciona con Windows.

Extra: permite a alguén máis que o use

Podes engadir un contrasinal extra no teu dispositivo LUKS. Isto é, podes permitir que alguén use o teu dispositivo sen dicirlles o teu contrasinal. Podes facelo deste xeito:

cryptsetup luksAddKey /dev/sdXX

Conclusión

Se eres un usuario de Linux, LUKS proporciona un método sinxelo para encriptar o teu pincho USB que podes usar como copia de seguridade para os teus ficheiros importantes. Tamén podes conseguir encriptar as túas particións de sistema para que, no caso de que che rouben o teu ordenador ou disco, non van poder acceder á túa información privada.

Obri! Recorda: a semana que vén vou falar sobre unha solución de encriptado para pinchos USB compatible con Windows