Cómo Verificar la firma PGP del Software Descargado en Linux

PGP, que significa Privacidad Bastante Buena, es un software de criptografía de clave pública. PGP se puede utilizar para cifrar y firmar la comunicación de datos. En este tutorial, veremos cómo verificar la firma PGP del software descargado.

Los usuarios de Linux pueden instalar software de forma segura desde los repositorios de su distribución. Pero también hay momentos en los que necesita descargar e instalar software desde el sitio web. ¿Cómo puede estar seguro de que el software que descargó no fue manipulado?

Algunos autores de software firman su software usando un programa PGP como GPG, que es una implementación de software libre del estándar OpenPGP. En ese caso, puede verificar la integridad del software utilizando GPG.

El proceso es relativamente simple:

  1. Descarga la clave pública del autor del software.
  2. Compruebe la huella digital de la clave pública para asegurarse de que es la clave correcta.
  3. Importe la clave pública correcta a su anillo de claves públicas GPG.
  4. Descargue el archivo de firma del software.
  5. Utilice la clave pública para verificar la firma PGP. Si la firma es correcta, entonces el software no fue manipulado.

Usaremos VeraCrypt como ejemplo para mostrarte cómo verificar la firma PGP del software descargado.

Ejemplo: Verificar la firma PGP de VeraCrypt

Aunque VeraCrypt es software de código abierto, no está incluido en el repositorio de Ubuntu u otra distribución Linux. Podemos descargar el instalador de VeraCrypt Linux desde el sitio web oficial.

VeraCrypt verifica la firma gpg

Alternativamente, puedes descargar el instalador de VeraCrypt en la terminal usando el comando a continuación.

wget https://launchpadlibrarian.net/289850375/veracrypt-1.19-setup.tar.bz2

En la página de descarga de VeraCrypt, también puedes encontrar el enlace de descarga de clave pública PGP y firma PGP. Descarga estos dos archivos. Alternativamente, puede descargarlos en terminal usando el comando a continuación.

clave pública PGP

wget https://www.idrix.fr/VeraCrypt/VeraCrypt_PGP_public_key.asc

Archivo de firma PGP

wget https://launchpad.net/veracrypt/trunk/1.19/+download/veracrypt-1.19-setup.tar.bz2.sig

Antes de hacer algo con la clave pública, siempre debe verificar la huella digital de la clave para ver si es la clave correcta. Muestra la huella digital de la tecla usando el comando de abajo.

gpg --with-fingerprint VeraCrypt_PGP_public_key.asc

La segunda línea de la salida es la huella digital de la llave.

huella digital de clave pública pgp

Compárala con la huella digital publicada en el sitio web de VeraCrypt.

huella dactilar de clave pública veracrypt

Como puedes ver, las dos huellas dactilares son idénticas, lo que significa que la clave pública es correcta. Para que pueda importar la clave pública a su anillo de claves públicas con:

gpg --import VeraCrypt_PGP_public_key.asc

gpg import public key

Ahora verifique la firma usando el comando a continuación. Debe especificar el archivo de firma y el instalador de software, cuyos nombres suelen ser idénticos, solo que con una extensión de archivo diferente. Esta es una firma separada, lo que significa que la firma y el software están separados el uno del otro.

gpg --verify veracrypt-1.19-setup.tar.bz2.sig veracrypt-1.19-setup.tar.bz2

La salida debe decir «Buena Firma».

 verificar firma pgp

La firma es un valor hash, cifrado con la clave privada del autor del software. GPG usa la clave pública para descifrar el valor hash, luego calcula el valor hash del instalador de VeraCrypt y compara los dos. Si estos dos valores hash coinciden, entonces la firma es buena y el software no fue manipulado.

Si GPG le indica que es una firma incorrecta, entonces el instalador del software fue manipulado o dañado.

Importar Clave pública desde una fuente de confianza

Tenga en cuenta que si el autor del software le indica su ID de clave pública en el sitio web, puede importar la clave pública con:

gpg --recv-keys <key-ID>

A continuación, muestre la huella digital con:

gpg --fingerprint <key-ID>

Y compare la huella digital de la salida con la publicada en el sitio web. Esto es más seguro porque la clave pública se importa desde un servidor de clave pública, que de forma predeterminada se establece en hkp://keys.gnupg.net en el archivo ~/.gnupg/gpg.conf. Dado que todos los servidores de claves principales se comunican entre sí y sincronizan las claves, por lo que no es necesario cambiar el valor predeterminado.

¡Eso es todo!

Espero que este tutorial le haya ayudado a verificar la firma PGP de las descargas de software. Como siempre, si te ha parecido útil esta publicación, suscríbete a nuestro boletín gratuito o síguenos en Google+, Twitter o en nuestra página de Facebook.

la Tasa de este tutorial