Cómo cifrar y descifrar archivos con GPG en Linux

toadmin. ru

Proteja su privacidad con el comando Linux GPG. Use el cifrado de clase mundial para mantener sus secretos seguros. Le mostraremos cómo usar GPG para manipular claves, cifrar archivos y descifrarlas.

Gnuprivacy Guard (GPG) le permite cifrar de forma segura los archivos para que solo el destinatario previsto pueda descifrarlos. En particular, GPG cumple con el estándar OpenPGP. Está modelado después del programa de Principios de Privacidad (PGP). PGP fue escrito en 1991 por Phil Zimmerman.

GPG se basa en la idea de dos claves de cifrado por persona. Cada persona tiene una clave privada y una clave pública. La clave pública puede descifrar lo que estaba encriptado con la clave privada.

Para enviar un archivo de forma segura, lo cifra con su clave privada y la clave pública del destinatario. Para descifrar el archivo, necesitan su clave privada y su clave pública.

A partir de esto, verá que las claves públicas deben ser compartidas. Debe tener la clave pública del destinatario para cifrar el archivo, y el destinatario necesita su clave pública para descifrarlo. No hay peligro en hacer que sus claves públicas sean simplemente públicas. De hecho, como veremos, existen servidores clave públicos para este propósito. Las llaves privadas deben mantenerse en secreto. Si su clave pública está en el dominio público, su clave privada debe mantenerse en secreto y segura.

Hay más pasos para configurar GPG que usarlo. Afortunadamente, generalmente solo necesitas configurarlo una vez.

Creando tus llaves

El comando GPG se ha instalado en todas las distribuciones de Linux probadas, incluidas Ubuntu, Fedora y Manjaro.

No necesita usar GPG con correo electrónico. Puede cifrar los archivos y hacerlos disponibles para descargar o transmitirlos físicamente al destinatario. Sin embargo, debe asociar una dirección de correo electrónico con las claves que genera, así que elija la dirección de correo electrónico que utilizará.

Aquí está el comando para generar tus claves. El parámetro de tecla de generación de general genera sus claves en una sesión interactiva en la ventana de su terminal. También se le pedirá que ingrese una frase de pases. Asegúrese de recordar la frase de pases. Tres o cuatro palabras simples conectadas por signos de puntuación es un modelo bueno y confiable para contraseñas y frases de contraseña.

GPG-Clave de generado completo

GPG-Clave de generación llena en la ventana terminal

Se le pedirá que seleccione un tipo de cifrado en el menú. A menos que tenga una buena razón para no hacerlo, escriba 1 y presione Entrar.

Debe seleccionar la longitud de bit de las teclas de cifrado. Presione ENTER para aceptar el valor predeterminado.

Problemas de generación de claves en una ventana terminal

Debe especificar cuánto tiempo debe durar la clave. Si está probando el sistema, ingrese una corta duración, como 5 durante cinco días. Si tiene la intención de retener la clave, ingrese una duración más larga, como 1 por un año. La vida útil de la clave es de 12 meses, por lo que deberá renovarse después de un año. Confirme su selección con la letra Y.

Cómo dividir manualmente un disco duro desde la línea de comando en Linux

Debe ingresar su nombre y dirección de correo electrónico. Puede agregar un comentario si lo desea.

Problemas de generación de claves en una ventana terminal

Se le pedirá que ingrese una frase de pases. Necesitará la frase de pases cuando trabaje con sus llaves, así que asegúrese de saber qué es.

Ventana de frase de pases GPG

Haga clic en Aceptar cuando haya ingresado la frase de pases. Verá esta ventana mientras trabaja con GPG, así que asegúrese de recordar su contraseña.

La generación de claves tendrá lugar y se le devolverá al símbolo del sistema.

GPG Generación de claves completada en la ventana Terminal

Creación de un certificado de revocación

Si su clave privada se conoce por los demás, deberá separar las teclas viejas de su identidad para que pueda generar otras nuevas. Para hacer esto, necesitará un certificado de revocación. Haremos esto ahora y lo guardaremos en un lugar seguro

El parámetr o-Output debe ser seguido por el nombre de archivo del archivo de certificado que desea crear. El parámetr o-GE N-Revoke hace que GPG genere un certificado de revocación. Debe proporcionar la dirección de correo electrónico que usó al crear las claves.

gpg --output & lt; hilda & gt;/ Revocation. crt-Gen-Revoke dave-geek@protonmail. com en la ventana terminal

Se le pedirá que confirme que desea crear un certificado. Presione y y presione Entrar. Se le pedirá que proporcione una razón por la que está creando el certificado. Como estamos haciendo esto de antemano, no lo sabemos con certeza. Presione 1 como una conjetura probable y presione Entrar.

Puede ingresar una descripción si lo desea. Presione Entrar dos veces para completar la descripción.

Se le pedirá que confirme su configuración, presione Y y presione Entrar.

Preguntas de certificado de GPG en una ventana de terminal

Se creará el certificado. Verá un mensaje que confirma que necesita mantener este certificado seguro.

Menciona a alguien llamado Mallory. Las discusiones sobre la criptografía han usado durante mucho tiempo a Bob y Alice mientras dos personas se comunican. Hay otros personajes menores. Eva es el interceptor, Mallory es el intruso. Todo lo que necesitamos saber es mantener el certificado seguro.

Por lo menos, eliminemos todos los permisos que no sean los nuestros del certificado.

Chmod 600~/revocation. crt.

chmod 600 & lt; hilda & gt;/ revocación. crt en la ventana terminal

Echemos un vistazo con LS para ver cuáles son los permisos ahora:

L S-L

http://cryptocouple. com/ En una ventana de terminal

Excelente. Nadie más que el propietario del archivo, EE. UU., Puede hacer cualquier cosa con el certificado.

Importar la clave pública de otra persona

Para cifrar un mensaje que otra persona puede descifrar, debemos tener su clave pública.

Si le han dado su clave en un archivo, puede importarlo utilizando el siguiente comando. En este ejemplo, el archivo clave se llama «Mary-Geek. Key».

GPG-Import Mary-Geek. Key

GPG-Import Mary-Geek. Key en la ventana Terminal

La clave se importará y se le mostrará el nombre y la dirección de correo electrónico asociada con la clave. Obviamente, esto debería corresponder a la persona de la que recibió.

clave importada con éxito en la ventana terminal

También existe la posibilidad de que la persona de la que necesita ha cargado su clave para un servidor de clave pública. Estos servidores almacenan las claves públicas de personas de todo el mundo. Los servidores clave sincronizan periódicamente entre sí, por lo que las teclas están disponibles en todas partes.

8 cosas que hacer después de instalar Linux Mint 19

El servidor de clave pública del MIT es un servidor clave popular que se sincroniza regularmente, por lo que una búsqueda debe tener éxito. Si alguien ha descargado recientemente una llave, puede llevar unos días.

La opció n-keyserver debe seguir el nombre del KeyServer en el que desea buscar. La opció n-Searc h-Keys debe ser seguida por el nombre de la persona que está buscando o su dirección de correo electrónico. Usaremos la dirección de correo electrónico:

GPG --KeyServer PGP. MIT. EDU --Search-Keys Mary-Geek@protonmail. com en la ventana Terminal

Las coincidencias se enumeran para usted y están numeradas. Para importar uno, escriba el número y presione Entrar. En este caso, la coincidencia es una, por lo que ingresamos 1 y presionamos Entrar.

GPG KeyServer conduce a la ventana Terminal

La clave se importará y se nos mostrará el nombre y la dirección de correo electrónico asociada con esa clave.

Verificar y firmar la clave

Si alguien que conoce le ha dado un archivo de clave pública, puede decir con seguridad que pertenece a esa persona. Si lo descargó de un servidor de clave pública, puede sentir la necesidad de verificar que la clave pertenezca a la persona prevista.

El parámetr o-fingerprint hace que GPG cree una secuencia breve de diez conjuntos de cuatro caracteres hexadecimales. Puede pedirle a una persona que le envíe una huella digital de su llave.

Luego puede usar el parámetr o-fingerprint para generar la misma secuencia de caracteres hexadecimales de huellas digitales y compararlos. Si coinciden, sabes que la clave pertenece a esa persona.

GPG-Fingerprint Mary-geek@protonmail. com en una ventana de terminal

Se genera la huella digital.

GPG Huella digital en la ventana terminal

Cuando esté seguro de que la clave es auténtica y pertenece a la persona con la que se supone que debe estar asociado, puede firmar su clave.

Si no lo hace, aún puede usarlo para cifrar y descifrar mensajes hacia y desde esa persona. Pero GPG le preguntará cada vez si desea continuar porque la clave no está firmada. Usaremos la opción de tecla de diseño de señalización adecuada y proporcionaremos la dirección de correo electrónico de la persona para que GPG sepa qué clave firmar.

GPG --Sign-Key Mary-Geek@protonmail. com en la ventana de la terminal

Verá información sobre la clave y la persona, y se le pedirá que confirme que realmente desea firmar la clave. Presione Y y presione Entrar para firmar la tecla.

Confirmación de la firma de clave GPG en la ventana de terminal

Cómo compartir su clave pública

Para compartir su clave como archivo, necesitamos exportarla en la tienda de claves GPG local. Para hacer esto, utilizaremos la opció n-Export seguida de la dirección de correo electrónico que utilizó para generar la clave. La opció n-Output debe seguir el nombre del archivo al que desea exportar la clave. La opción de armadura le dice a GPG que genere una salida de armadura ASCII en lugar de un archivo binario.

gpg --output & lt; hilda & gt;/ dave-geek. key --armor --export dave-geek@protonmail. com en una ventana de terminal

Podemos mirar dentro del archivo clave con menos esfuerzo.

Menos Dave-Geek. Key

Archivo de clave pública más pequeña en la ventana de terminal

La clave se muestra en todo su gloria:

Archivo de clave pública más pequeña en la ventana de terminal

También puede compartir su clave pública en un servidor de clave pública. El parámetr o-sen d-Keys envía la clave al KeyServer. El parámetr o-KeyServer debe seguir la dirección web del servidor de clave pública. Para determinar qué clave enviar, se debe especificar una huella digital clave en la línea de comando. Tenga en cuenta que no hay espacios entre conjuntos de cuatro caracteres.

Los 3 mejores sistemas operativos de Linux para la educación

(Puede ver su huella digital clave usando el parámetr o-fingerprint).

GPG--Send-Keys-Keyserver PGP. MIT. EDU 31A4E3BE6C022830A804DA0EE9E4D6D0F64EEED4

gpg --send-keys-keyserver pgp. mit. edu 31a4e3be6c022830a804da0ee9e4d6d0f64eed4 en una ventana terminal

Recibirá una confirmación de que se ha enviado la clave.

La clave de confirmación se envió al servidor de clave en una ventana de terminal.

Cifrado de archivo

Finalmente estamos listos para cifrar el archivo y enviarlo a Mary. El archivo se llama raven. txt.

El parámetr o-napt le dice a GPG que cifre el archivo, y el parámetr o-sign le indica que firme el archivo con sus datos. El parámetr o-mor le dice a GPG que cree un archivo ASCII. El parámetr o-r (destinatario) debe ser seguido por la dirección de correo electrónico de la persona a la que está enviando el archivo.

GPG --Entrypt --sign --armo r-r mary-geek@protonmail. com en una ventana terminal

El archivo se crea con el mismo nombre que el archivo original, pero con «. asc» agregado al nombre del archivo. Echemos un vistazo al interior.

Menos raven. txt. asc

Menos raven. txt. asc en una ventana terminal

El archivo es completamente ilegible y solo puede ser descifrado por alguien que tiene su clave pública y la clave privada de Mary. La única persona que tiene ambos debe ser María.

Contenido cifrado de Raven. txt. asc en la ventana terminal

Ahora podemos enviar el archivo a Mary, Buuuuuuut seguro de que nadie más puede descifrarlo.

Descifrar los archivos

Mary ha enviado una respuesta. Está en un archivo encriptado llamado Coded. asc. Podemos descifrarlo muy fácilmente con la opció n-decrypt. Vamos a redirigir la salida a otro archivo llamado Plain. txt.

Tenga en cuenta que no necesitamos decirle a GPG a quién pertenece el archivo. Esto se puede entender a partir del contenido encriptado del archivo.

gpg --decrypt coded.asc >Plain. txt

El archivo ha sido descifrado con éxito para nosotros.

archivo descifrado menos en la ventana de terminal

Actualización de tus claves

Puede pedirle periódicamente a GPG que verifique sus claves existentes en el servidor de clave pública y actualice cualquier cosa que haya cambiado. Puede hacer esto cada pocos meses o cuando reciba una clave de un nuevo contacto.

El parámetr o-Refres h-Keys obliga a GPG a realizar la verificación. El parámetr o-KeyServer debe ser seguido por el Keyserver de su elección. Una vez que las claves se han sincronizado entre los servidores de claves públicas, no importa cuál elija.

GPG-Keyserver Pgp. mit. edu-Refresh-Keys

GPG-Keyserver Pgp. mit. edu-Refresh-Keys en la ventana terminal

GPG responde enumerando las claves que verifica y le permite saber si han sido cambiados y actualizados.

La tecla GPG se actualiza en la ventana Terminal

La privacidad es un tema candente

La privacidad nunca está lejos de las noticias en estos días. Cualesquiera que sean sus razones para querer mantener su información segura y privada, GPG proporciona un medio simple para aplicar un cifrado increíblemente fuerte a sus archivos y mensajes.

También hay otras formas de usar GPG. Puede obtener un complemento para Thunderbird llamado Enigmail. Se conecta directamente a la configuración de su GPG para que pueda cifrar correos electrónicos desde Thunderbird.