Saltar a contenido

36. GNU PGP

gnupgp es una herramienta de línea de comando sin interfaz gráfica. Los comandos pueden incluir un menu interactivo. Incluye:

  • Full OpenPGP implementation (see RFC4880 at RFC Editor).
  • Full CMS/X.509 (S/MIME) implementation.
  • Ssh-agent implementation
  • Runs on all Unix platforms, Windows and macOS.
  • A full replacement of PGP; written from scratch.
  • Does not use any patented algorithms.
  • Freely available under the GPL;
  • Can be used as a filter program.
  • Better functionality than PGP with state of the art security features.
  • Decrypts and verifies PGP 5, 6 and 7 messages.
  • Supports RSA, ECDH, ECDSA, EdDSA, Elgamal, DSA, AES, Camellia, 3DES, Twofish, SHA2, and many more algorithms.
  • Language support for a load of languages.
  • Online help system.
  • Optional anonymous message receivers.
  • Integrated support for HKP keyservers (sks-keyservers.net).
  • and many more things…

Documentación gnupgp

36.1 Instalación

36.1.1 Instalación MacOS

Primera forma Usando brew.

brew install gnupg
Segunda forma Descargar instalador para mac e instalar. En este caso el programa se llama gpg que enlaza con gpg2

36.1.2 Instalación windows

Hay varios medios, por ejemplo: gpg4win. Esta distribución incluye interfaz gráfico Kleopatra
También el programa gpg para cmd.

36.2 Guia de uso de gpg

Documentación aquí.

Si se invoca gpg sin comandos se entra en modo interactivo. En caso de dificultadoes usar gpg --verbose Guia gnu gpg

36.2.1 Generación de claves

Comando gpg --gen-key , tomará unos valores por defecto (ejemplo cod RSA), para configuración completa gpg --full-generate-key

36.2.2 Interecambio de claves

Para intercambiar la clave pública necsitamos listar las claves:

gpg --list-keys
Para poder enviar la clave pública primero debemos exportarla.
gpg --output javi.gpg --export javier@casa.es
# o bien
gpg --export  -a javier@casa.es > javi.gpg
Que contiene el comando --export el identificador javier@case.es , el fichero de salida con --output.
El formato de salida es binario. Si queremos en formato ASCII (por ejemplo para enviarlo por correo) usaremos la opción --armor

gpg --armor --output javi.asc --export javier@casa.es
y para la clave privada:

gpg --export-secret-key -a "nombre del usuario" > private.key

36.2.2.1 Importar clave pública

Para importar la clave publica y privada

gpg --import public.key 
gpg --import private.key

36.2.2.2 Cifrar y descifrar documentos

36.3 Referencia

Comandos y opciones son similares

36.3.1 Comandos

--help
--version

36.3.1.1 Comandos de operación

comandos de operación

36.3.1.2 Comandos de generación de claves

36.3.2 Opciones gpg

ver

36.3.3 GPG Configuración

ver

36.3.4 GPG Ejemplos

gpg --list usuario