¿Cuál es la forma más popular de cifrar archivos o carpetas individuales?
¿Cuál es la forma más popular de cifrar archivos o carpetas individuales?
Respuestas:
GnuPG (GPG) puede usar cifrado asimétrico y simétrico. La criptografía asimétrica implica dos claves, una clave pública para el cifrado y una clave privada para el descifrado. Consulte la respuesta de djeikyb en esta página para el uso de claves asimétricas.
Para el cifrado simétrico, las claves de cifrado y descifrado son iguales. Es importante darse cuenta de que la mayoría de las personas son muy malas para elegir contraseñas seguras. Por lo tanto, un esquema de cifrado que use contraseñas debería usar una función de derivación de clave que requiera más recursos (tiempo, memoria) para ralentizar los ataques de fuerza bruta.
Para obtener una descripción del KDF de GnuPG, consulte esta publicación de Crypto Stack Exchange . Ejemplo de uso de cifrado simétrico:
gpg --symmetric < unencrypted_file > encrypted_file
Descifrado:
gpg --decrypt < encrypted_file > decrypted_file
Tenga en cuenta que gpg
almacena en caché el symkey de forma predeterminada (comportamiento documentado). Para evitar eso, use la --no-symkey-cache
opción como se describe en una respuesta relacionada .
respuesta anterior para usuarios que pueden elegir buenas claves, vea la nota a continuación
Para archivos individuales, openssl
es muy útil, especialmente cuando se envía el archivo a través de un canal no seguro (por ejemplo, correo electrónico). Es gratis (en dinero y en libertad), a diferencia de Truecrypt, que solo es gratis en dinero.
NOTA : la contraseña que ingrese aquí será procesada por una iteración MD5 1 . Si elige una contraseña "123456", tendrá muy poca seguridad.
Cifrar:
openssl aes-256-cbc -salt -in unencrypted_file -out encrypted_file
Se le pedirá una contraseña, que debe ingresar dos veces.
Descifrar:
openssl aes-256-cbc -d -in encrypted_file -out unencrypted_file
Página del manual para el programa enc .
1 openssl enc
utiliza la función de resumen definida por la -md
opción (md5 predeterminado) e invoca la función EVP_BytesToKey()
con un recuento de iteraciones de 1. Esto se puede encontrar en la fuente openssl en apps/enc.c
.
-a
base64-codifica la entrada (alias de -base64
), para descifrarla también necesita agregar la -a
opción.
aes-256
es un alias para aes-256-cbc
, no hay diferencia. CBC es un modo de operación para cifrados de bloque. Consulte la página del manual de enc(1)
para obtener una lista de los cifrados admitidos.
Yo uso Seahorse para esto. Es un front-end de Gnome para GnuPG y se integra bien con nautilus:
Para obtener la integración de nautilus, instale el paquete seahorse-nautilus
desde el Centro de software: seahorse-nautilus
TrueCrypt : software gratuito de cifrado de disco descontinuado, no seguro y disponible en origen.
Un método cli sería GnuPG , y tal vez alquitrán. Esta es una breve guía de referencia, realmente debería leer la documentación.
Primera carrera gpg --gen-key
. Siga las indicaciones para generar su par de claves pública / privada. Ahora se puede cifrar archivos: gpg -e foo.txt
. Esto creará un archivo llamado foo.txt.gpg
. GnuPG no elimina el archivo original sin cifrar, depende de usted si desea que esté dando vueltas. Para descifrar foo.txt.gpg, ejecuta gpg foo.txt.gpg
. El descifrado le indicará antes de sobrescribir los archivos existentes.
Si necesita encriptar un directorio, primero hágalo:
tar -cf foo.tar foo/
gpg -e foo.tar
Puede cambiar el nombre del archivo cifrado como desee. Cuando se descifra, se conserva el nombre del archivo original.
También hay eCryptfs , que Ubuntu usa para cifrar los directorios principales.
Puede seleccionar el cifrado del directorio de inicio en la instalación, o puede configurar un único directorio, $HOME/Private
de forma predeterminada, utilizando la utilidad ecryptfs-setup-private . Esta carpeta se puede configurar para que se monte automáticamente al iniciar sesión y se desmonte al cerrar sesión. Cada archivo y carpeta dentro $HOME/Private
, recursivamente, será encriptado.
También puede usar "Firma académica" para usar criptografía de curva elíptica con una GUI wxWidgets. Es de código abierto pero no en los repositorios. Principalmente realiza cifrado asimétrico ECC, firmas y marcas de tiempo. Pero la herramienta también tiene una entrada de menú para invocar Gnupg (RSA) y acceso directo a cifrado / descifrado simétrico de archivos que ofrecen AES y otros algoritmos. Su página de inicio está aquí: https://www.academic-signature.org
Lo uso mucho para proteger archivos en tránsito y para firmar digitalmente documentos académicos (transcripciones, cartas de recomendación, listas de calificaciones, etc.)
Tomé algunas de las otras sugerencias y creé un contenedor de script de shell simple (para los perezosos)
https://github.com/orionM/ssl-crypt-tools
disfrutar
openssl aes-256-cbc ...
¿Sabes que en lugar de usar if [ $? -ne 0 ] ; then... fi
puedes usar ||
? Y hay algunas personas que piensan que OpenSSL "* ha tenido varias fallas de seguridad importantes en el último año [ Heartbleed ], mientras que los documentos de Snowden muestran que GPG es uno de los pocos programas que podría afectar la NSA cuando se usa correctamente. El código OpenSSL también es un pozo negro completo y tiene una cobertura de prueba terrible. (Divulgación: [él] trabaja [s] en un proyecto "OpenSSL apesta; arreglemoslo"). - jbarlow * "