====== Cifrar ficheros con OpenSSL y GPG ====== **OpenSSL**. # Lista los algoritmos de cifrado disponibles, para el ejemplo usaremos camellia. openssl enc -ciphers # Cifrar openssl enc -camellia-256-cfb8 -in texto.txt -out texto_cifrado.txt # Descifrar (-d) openssl enc -d -camellia-256-cfb8 -in texto.txt -out texto_cifrado.txt # Cifrar desde la entrada estándar (tubería) simplemente no indicando "-in". echo hola | openssl enc -camellia-256-cfb8 -out texto_cifrado.txt enter camellia-256-cfb8 encryption password: Verifying - enter camellia-256-cfb8 encryption password: # Descifrar (opción -d). openssl enc -d -camellia-256-cfb8 -in texto_cifrado.txt enter camellia-256-cfb8 decryption password: hola **GPG** (NO requiere tener un juego de llaves). # Listar algoritmos de cifrado: IDEA, 3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH, CAMELLIA128, CAMELLIA192, CAMELLIA256 gpg --version Algoritmos disponibles: Clave pública: RSA, ELG, DSA, ECDH, ECDSA, EDDSA Cifrado: IDEA, 3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH, CAMELLIA128, CAMELLIA192, CAMELLIA256 Resumen: SHA1, RIPEMD160, SHA256, SHA384, SHA512, SHA224 Compresión: Sin comprimir, ZIP, ZLIB, BZIP2 # Cifrar un fichero llamado "texto.txt". gpg --symmetric --cipher-algo TWOFISH --output texto_cifrado.txt texto.txt # Descifrar el fichero cifrado. gpg --decrypt --output texto_descifrado.txt texto_cifrado.txt # Cifrar usando una tubería, para el ejemplo un fichero comprimido tar.gz. tar -czvf - directorio/* | gpg --symmetric --cipher-algo CAMELLIA256 --output archivo.tar.gz.enc # Descifrar. gpg --decrypt archivo.tar.gz.enc | tar -xzvf - # Usar un fichero para no tener que introducir manualmente la passphrase. gpg --symmetric --batch --yes --passphrase-file credenciales.txt -cipher-algo TWOFISH --output texto_cifrado.txt texto.txt # Descifrar usando la passphrase desde un archivo, útil para automatizar procesos. gpg --decrypt --batch --yes --passphrase-file credenciales.txt --output texto_descifrado.txt texto_cifrado.txt