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