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 públicas y privadas para private.pgp
y public.pgp
, respectivamente. ¿Cómo lo hago?
Comentarios
Respuesta
Exportar clave pública
Este comando exportará una versión blindada ascii del 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 acerca de la dirección de correo electrónico de uno. Esto es generalmente aceptable ya que la clave pública se usa para encriptar 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 se distribuye . Si el propósito es crear una clave de respaldo, debe usar la opción de respaldo:
gpg --output backupkeys.pgp --armor --export-secret-keys --export-options export-backup user@email
Esto exportará toda la información necesaria a 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 clave de papel . Y colocando la llave de papel en una caja fuerte a prueba de fuego / impermeable.
Servidores de llaves públicas
En general, no es recomendable publicar claves públicas personales en servidores de claves. No existe ningún método para eliminar una clave una vez que se publica y no existe ningún método para garantizar que la clave del servidor se haya colocado allí por el supuesto propietario de la clave.
Es mucho mejor colocar su clave pública en un sitio web de su propiedad o bajo su control. 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 webkey servicio de descubrimiento de claves de nivel de dominio.
Comentarios
- ¿La clave exportada (segundo comando) está cifrada o necesito cifrarlo yo mismo antes de almacenarlo en ag una unidad USB?
- @Julian … La clave secreta exportada tiene la misma protección que la clave secreta que se exportó. Si había una contraseña, se requiere la contraseña para importar la clave secreta.
- Hice una copia de seguridad usando el método anterior, pero me olvidé tontamente de probarla. A menos que ' me falte algo, no puedo ' recuperar mi clave pública del método de copia de seguridad especificado (
--export-options export-backup
, etc.). ¿Me falta algo o no entendí el tipo de copia de seguridad que estaba haciendo? - La documentación conoce
--export-secret-keys
, pero no--export-secret-key
. - @OMGtechy ¿Cómo intentó recuperar la (s) clave (s)? Podría restaurar las claves públicas con
gpg --import-options restore --import backupkeys.pgp
, pero eso no restaura las claves secretas, solo las públicas, si backupkeys.pgp fue creado porgpg --output backupkeys.pgp --armor --export --export-options export-backup
. En ese sentido,--armor
no es necesario yexport-backup
podría ser reemplazado porbackup
.
Responder
- Enumere las claves que tiene:
gpg --list-secret-keys
- Exportar la clave:
gpg --export-secret-key name > ~/my-key.asc
- Copiarla en otra máquina;
- Importar la clave:
gpg --import my-key.asc
Comentarios
- Tenga en cuenta que
.asc
está para ASCII, pero la salida degpg --list-secret-keys
es binaria. - En realidad, .asc es para
ASCII armored
y la salida es texto cifrado. Puede atraparlo con seguridad y verlo usted mismo. Además, como la mayoría de los archivos de Linux, la extensión del archivo también es arbitraria, no ' t técnicamente tiene que ser asc. @WeihangJian - Sería una buena idea eliminar el archivo de clave después de que se haya importado y probado con éxito. Si el archivo está allí, podría usarse de forma maliciosa.
Responda
A export
ALGUNA clave pública ID de clave a una output
archivo:
gpg --output public.pgp --export SOMEKEYID
Cuando se trabaja con claves secretas, generalmente es preferible no escribirlas en archivos y, en su lugar, use SSH para copiarlos directamente entre máquinas usando solo gpg
y una tubería:
gpg --export-secret-key SOMEKEYID | ssh othermachine gpg --import
Si debe , sin embargo, envíe su clave secreta a un archivo, asegúrese de que esté cifrada. A continuación, se explica cómo lograrlo mediante el cifrado AES con el enfoque de Dark Otter :
gpg --output public.gpg --export SOMEKEYID && \ gpg --output - --export-secret-key SOMEKEYID |\ cat public.gpg - |\ gpg --armor --output keys.asc --symmetric --cipher-algo AES256
El último enfoque es ideal si desea crear una copia de seguridad física de sus claves públicas y privadas para protegerse contra una falla del disco cuando no existe otra forma de recuperar el acceso a sus claves.
Consulte Mover claves GPG de forma privada para consideraciones adicionales.
Responder
» GnuPG (también conocido como PGP / GPG) « Más información
Generar clave: gpg --gen-key
Ver todas las claves: gpg --list-keys
Exportar clave pública:
gpg --export -a --output [path-to-public-key].asc [email-address]
Exportar clave secreta:
gpg -a --export-secret-keys > [path-to-secret-key].asc
gpg --full-generate-key
para tener una interfaz completa para generar claves