¿Cómo verifico una firma PGP??

¿Cómo verifico una firma PGP??
PGP (Bastante buena privacidad) es un programa público de criptografía basado en clave. PGP complementa la tecla simétrica con algoritmos de clave asimétrica, lo que hace que este software sea un sistema criptográfico híbrido, a menudo llamado criptosistema híbrido.

PGP no solo se usa para asegurar la información de las amenazas cibernéticas, sino también para verificar la integridad de los archivos.

Este tutorial explica fácilmente cómo funciona PGP y cómo verificar las firmas de PGP.

Cómo funciona PGP

La siguiente imagen muestra una clave pública PGP. Esta clave pública PGP se puede descifrar solo con una clave PGP privada específica. El emisor de la clave pública a continuación también emitió una clave PGP privada ya que se generan en el mismo proceso. Solo comparte la clave pública.
Si toma su clave pública para cifrarle un mensaje, podrá descifrar el mensaje usando su clave privada. Solo su clave privada puede descifrar el mensaje que encriptó usando su clave pública.

La información se encripta utilizando la clave pública y se descifra utilizando la clave privada. Se llama cifrado asimétrico.

Entonces, incluso si un atacante logra interceptar el mensaje sin la clave privada, no puede ver el contenido del mensaje.

La ventaja del cifrado asimétrico es la simplicidad de intercambiar claves. Pero su desventaja es que no puede cifrar grandes cantidades de datos, y es por eso que PGP los implementa a ambos.

El cifrado simétrico se aplica cuando la clave pública se usa para cifrar los datos protegidos. Con la clave pública, el remitente hace dos cosas: primero genera el cifrado simétrico para proteger los datos, y luego aplica el cifrado asimétrico, que no cifra los datos en sí, sino la clave simétrica, que protege los datos.

Para ser más técnico, antes de aplicar la clave simétrica, los datos también se comprimen antes de estar encriptados con la clave simétrica y la clave pública. El siguiente flujo de la tabla muestra todo el proceso:

Firmas de PGP

PGP también se usa para verificar la integridad de los paquetes. Esto se logra a través de la firma digital, que se puede hacer con PGP.

Primero, PGP genera un hash que está encriptado con la clave privada. Tanto la clave privada como el hash pueden descifrarse utilizando la clave pública.

PGP crea una firma digital, por ejemplo, para una imagen ISO que usa algoritmos DSA o RSA. En este caso, la clave privada se adjunta a la imagen de software o ISO, al contrario de la operación descrita anteriormente. La clave pública también se comparte.

Los usuarios usan la clave pública para verificar la firma adjunta al software lanzado.

El siguiente flujo de la tabla muestra cómo la clave privada y el hash se adjunta al software y cómo el usuario toma el software con el hash y la clave privada adjunta junto con la clave pública para verificar la firma:

¿Cómo verifico una firma PGP??

El primer ejemplo muestra cómo verificar la firma del kernel de Linux. Para probarlo, acceda a https: // kernel.org y descargue una versión de kernel y su archivo PGP. Para este ejemplo, descargaré archivos Linux-5.12.7.alquitrán.xz y Linux-5.12.7.alquitrán.firmar.

El primer ejemplo muestra cómo verificar la firma con un solo comando. Según la página del hombre, esta combinación de opciones se desaprobará en futuras versiones. Sin embargo, todavía se usa ampliamente, y aunque la combinación específica estará en desuso, las opciones permanecerán.

La primera opción -opciones de llaves Permite definir opciones para KeyServer donde se almacenan las claves públicas. Básicamente, esto permite la implementación de opciones de obtención de claves públicas.

El -opciones de llaves se combina con el -retrato automático opción para recuperar automáticamente las claves públicas de un keyserver al verificar las firmas.

Para encontrar las claves públicas, este comando leerá la firma en busca de un KeyServer preferido definido o ID de firmante a través de un proceso de búsqueda utilizando el directorio de claves web.

GPG-Keyserver-Opciones Auto-Key-Retrieve --verify Linux-5.12.7.alquitrán.firmar

Como puede ver, la firma es buena, pero hay un mensaje de advertencia que dice que GPG no puede confirmar que la firma pertenece al propietario. Cualquiera puede emitir una firma pública como Greg Krohan-Hartman. Sabe que la firma es legítima porque confía en el servidor desde el que lo ha descargado. En este caso, se especifica en el .Firmar descargado del núcleo.organizar.
Esta advertencia siempre está presente, y puede evitar agregando firmas a una lista de confianza de firma utilizando la opción -Trust de llave de edición. La verdad es que no lo hace el usuario, y la comunidad GPG solicitó la eliminación de advertencia.

Verificación de sha256sums.gpg

En el siguiente ejemplo, verificaré la integridad de una vieja imagen de Kali Linux que encontré en mi caja. Para este propósito, descargué los Sha256sums.archivos GPG y SHA256SUMS que pertenecen a la misma imagen ISO.

Una vez que descargas una imagen ISO, el SHA256SUMS.GPG y SHA256Sums, necesitas obtener las claves públicas. En el siguiente ejemplo, busco las teclas usando wget y GPG -MPORT (Enlace de instrucciones de verificación de Kali a este servidor clave).

Luego verifico la integridad de los archivos llamando a GPG con el -verificar argumento:

wget -q -o -https: // Archive.kali.org/Archive-Key.ASC | GPG -Import
GPG -VERIFICAR SHA256SUMS.GPG SHA256SUMS

Como puede ver, la firma es buena y la verificación fue exitosa.

El siguiente ejemplo muestra cómo verificar una descarga de NodeJS. El primer comando devuelve un error porque no hay clave pública. El error indica que necesito buscar la clave 74F12602B6F1C4E913FAA37AD3A89613643B6201. Por lo general, también puede encontrar la ID de clave en las instrucciones.

Mediante la opción -llave, Puedo especificar el servidor para buscar la clave. Mediante la opción -recepcionalmente, Recupero las llaves. Entonces la verificación funciona:

GPG -VERIFICAR SHASUMS256.TXT.asc

Copio la clave que necesito para buscar, y luego ejecuto:

GPG -Piscina de Keyserver.Sks-Keyservers.NET-RECV-KEYS
74F12602B6F1C4E913FAA37AD3A89613643B6201
GPG -VERIFICAR SHASUMS256.TXT.asc

Buscando claves GPG:

Si la recuperación automática de las teclas no funciona y no puede encontrar las instrucciones específicas de la verificación, puede buscar la clave en un keyserver utilizando la opción -clave de búsqueda.

GPG --Search-Key 74F12602B6F1C4E913FAA37AD3A89613643B6201

Como puede ver, la clave fue encontrada. También puede recuperarlo presionando el número de la tecla que desea recuperar.

Conclusión

Verificar la integridad de las descargas puede evitar problemas serios o explicarlos, por ejemplo, cuando el software descargado no funciona correctamente. El proceso con GPG es bastante fácil, como se muestra arriba, siempre y cuando el usuario obtenga todos los archivos necesarios.

Comprender el cifrado asimétrico o el cifrado basado en claves públicas y privadas es una necesidad básica para interactuar de manera segura en Internet, por ejemplo, utilizando firmas digitales.

Espero que este tutorial sobre las firmas PGP haya sido útil. Siga siguiendo la pista de Linux para obtener más consejos y tutoriales de Linux.