Chuleta de comandos para GPG

28/06/2017Artículo original

Chuleta de comandos para GPG

Si encontraste esta página, por suerte es lo que estabas buscando, una pequeña chuleta de comandos para GPG. Si encuentras algún error, no dudes en comentarlo.

He usado el “Nombre de Usuario” como el nombre asociado a la clave. Perdón si no es muy imaginativo. Creo que GPG es bastante amplio en sus asignaciones de usuario, por ejemplo el nombre para mi clave privada es Charles Lockhart, pero puedo referenciarlo simplemente poniendo Lockhart.

Empecemos:

Crear una clave

gpg --gen-key

Generalmente puedes seleccionar las que vienen por defecto.

Exportar una clave pública dentro del archivo public.key

gpg --export -a "Nombre de Usuario" > public.key

Esto creará un archivo llamado public.key con la representación ascii de la clave pública para Nombre de Usuario. Esto es una variación de:

gpg --export

el cual por sí mismo básicamente va a imprimir un montón de porquerías en tu pantalla. Recomiendo no hacerlo.

gpg --export -a “Nombre de Usuario"

imprime la clave pública para el ‘Nombre de Usuario’ en la línea de comandos, lo cual es medio útil para exportar una clave privada:

gpg --export-secret-key -a "Nombre de Usuario" > private.key

Esto creará un archivo llamado private.key con la representación ascii de la clave privada para ‘Nombre de Usuario’.

  Las 'stories' ya han llegado incluso a Visual Studio Code: una extensión nos permite mostrar nuestro código al resto de usuarios

Es muy parecido a exportar una clave pública, pero tienes que pisar algunas protecciones que vienen por default. Hay una nota (*) al pie explicando porqué desearías hacer esto.

Importar una clave pública

gpg --import public.key

Si encontraste esta página, por suerte es lo que estabas buscandoEsto agrega la clave pública en el archivo “*public.key*” a tu anillo de claves públicas.

Importar una clave privada

gpg --allow-secret-key-import --import private.key

Esto agrega una clave privada en el archivo “*private.key” a tu anillo de claves privadas. Hay una nota () al pie explicando porqué desearías hacer esto.

Eliminar una clave pública (de tu anillo de claves públicas):

gpg --delete-key "Nombre de Usuario"

Esto elimina la clave pública de tu anillo de claves públicas.

Eliminar una clave secreta (una clave de tu anillo de claves secreta)

gpg --delete-secret-key "Nombre de Usuario"

Esto elimina la clave secreta de tu anillo de claves secretas.

Listar las claves de tu anillo de claves públicas

gpg --list-keys

Listar las claves de tu anillo de claves secretas

gpg --list-secret-keys

Generar una lista corta de números que puedes usar a través de un método alternativo para verificar la clave pública

gpg --fingerprint > fingerprint

Esto crea el archivo fingerprint con la información de la firma digital.

Encriptar datos

gpg -e -u "Nombre de Usuario del Emisor" -r "Nombre de Usuario del Destinatario" somefile

Aquí hay algunas opciones útiles, como por ejemplo -u para especificar la clave secreta que será utilizada, y -r para especificar la clave pública del destinatario.Como por ejemplo:

gpg -e -u "Manuel Ginobili" -r “Un amigo" mydata.tar

Esto debería crear un archivo llamado “*mydata.tar.gpg*” que contiene la información encriptada. Pienso que se debe especificar el nombre de usuario del emisor para que el destinatario pueda verificar que el contenido proviene de esa persona (¿Utilizando su firma digital?)

  Ya podemos descargarnos el framework .NET 5.0, disponible por primera vez para Windows ARM64 y WebAssembly

Un interesante comentario al margen, encripté el patch preventivo del kernel, un archivo de 55,247 bytes, y terminé con un archivo encriptado de 15,276 bytes.

Desencriptar datos

gpg -d mydata.tar.gpg

Si tienes múltiples claves secretas, el comando elegirá la correcta, o mostrará un error si la correcta no existe. Se te pedirá que ingreses tu passphrase. Luego de ello existirá el archivo “*mydata.tar*”, y el “original” encriptado, mydata.tar.gpg.

gpg --o archivodesalida -d archivoencriptado.gpg

o utilizar mydata.tar.gpg como por ejemplo,

gpg -o mydata.tar -d mydata.tar.gpg

Otra alternativa es ejecutar algo como

gpg -d mydata.tar.gpg > mydata.tar

y simplemente enviar la salida dentro de un archivo. Pareciera funcionar de la misma manera.

Ok, entonces si eres un paranoico y quieres encriptar alguno de tus propios archivos, para que nadie pueda entrar en tu computadora y obtenerlos, simplemente encríptalos usandote a tí mismo como el contenedor.

No he utilizado estos comandos:

gpg --edit-key
gpg --gen-revoke

Compartir Claves Secretas

  1. Caso de Uso 1: Arriba están mencionados los comandos para exportar e importar las claves secretas, y quiero explicar una razón por la cual probablemente quieras hacer esto. Básicamente si quieres un par de claves para todas tus computadoras (asumiento que tienes múltiples computadoras), entonces esto te permitirá exportar ese par de claves de la computadora original e importarla en las otras computadoras.
  2. Caso de Uso 2: Arriba están mencionados los comandos para exportar e importar las claves secretas, y quiero explicar una razón por la cual probablemente quieras hacer esto. Básicamente, si perteneces a un grupo, y quisieras crear un par de clave simple para ese grupo, una persona debería crear el par de claves, luego exportar las claves pública y privada, darselas a los otros miembros del grupo y ellos deberían importar ese par. Luego un miembro del grupo o alguien afuera podría utilizar la clave pública del grupo, encriptando el mensaje y/o los datos, y enviándolo a los miembros del grupo, y todos ellos deberían poder tener acceso al mensaje y/o los datos. Basicamente, podrías crear un sistema simplificado donde sólo una clave pública es requerida para enviar cosas encriptadas a múltiples destinatarios.
  SQL Server: cuáles son las diferencias entre @@identity y Scope_identity

Referencias

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad