Cómo exportar una clave privada GPG y una clave pública a un archivo

18

He generado claves usando GPG, ejecutando el siguiente comando

gpg --gen-key

Ahora necesito exportar el par de claves a un archivo; es decir, claves privadas y públicas para private.pgpy public.pgp, respectivamente. ¿Cómo lo hago?

rocoso
fuente

Respuestas:

27

Exportar clave pública

Este comando exportará una versión blindada ascii de la clave pública:

gpg --output public.pgp --armor --export username@email

Exportar clave secreta

Este comando exportará una versión blindada ascii de la clave secreta:

gpg --output private.pgp --armor --export-secret-key username@email


Problemas de seguridad, respaldo y almacenamiento

Una clave pública PGP contiene información sobre la dirección de correo electrónico. Esto es generalmente aceptable ya que la clave pública se usa para cifrar el correo electrónico a su dirección. Sin embargo, en algunos casos, esto no es deseable.

Para la mayoría de los casos de uso, la clave secreta no necesita ser exportada y no debe distribuirse . Si el propósito es crear una clave de respaldo, debe usar la opción de respaldo:

gpg --output backupkeys.pgp --armor --export --export-options export-backup user@email

Esto exportará toda la información necesaria para restaurar las claves secretas, incluida la información de la base de datos de confianza. Asegúrese de almacenar las claves secretas de respaldo fuera de la plataforma informática y en una ubicación física segura.

Si esta clave es importante para usted, le recomiendo imprimir la clave en papel usando paperkey . Y colocando la llave de papel en una caja fuerte a prueba de fuego / impermeable.

Servidores de clave pública

En general, no es aconsejable publicar claves públicas personales en servidores clave. No existe un método para eliminar una clave una vez que se publica y no hay ningún método para garantizar que la clave en el servidor haya sido colocada allí por el supuesto propietario de la clave.

Es mucho mejor colocar su clave pública en un sitio web que usted posee o controla. Algunas personas recomiendan keybase.io para su distribución. Sin embargo, ese método rastrea la participación en varias comunidades sociales y técnicas que pueden no ser deseables para algunos casos de uso.

Para los expertos en tecnología , personalmente recomiendo probar el servicio de descubrimiento de claves de nivel de dominio webkey .

Sello de goma
fuente
¿La clave exportada (segundo comando) está encriptada o necesito encriptarla yo solo antes de almacenarla en una unidad USB?
Julian
1
@Julian ... La clave secreta exportada tiene la misma protección que la clave secreta que se exportó. Si hubo una frase de contraseña, se requiere la frase de contraseña para importar la clave secreta.
RubberStamp
1
Hice una copia de seguridad usando el método anterior, pero tontamente olvidé probarlo. A menos que me falte algo, parece que no puedo recuperar mi clave pública del método de copia de seguridad especificado ( --export-options export-backup, etc.). ¿Me estoy perdiendo algo o no he entendido bien el tipo de copia de seguridad que estaba haciendo?
OMGtechy
La documentación lo sabe --export-secret-keys, pero no --export-secret-key.
jarno
@OMGtechy ¿Cómo intentó recuperar la (s) clave (s)? Podría restaurar las claves públicas gpg --import-options restore --import backupkeys.pgp, pero eso no restaura las claves secretas, solo las públicas, si backupkeys.pgp fue creado por gpg --output backupkeys.pgp --armor --export --export-options export-backup. En eso --armorno es necesario y export-backuppodría ser reemplazado por backup.
jarno
2
  • Enumere las claves que tiene: gpg --list-secret-keys
  • Exportar la clave: gpg --export-secret-key name > ~/my-key.asc
  • Cópielo en otra máquina;
  • Importar la clave: gpg --import my-key.asc
Serj Sp
fuente