Como exportar uma chave privada e pública de GPG para um arquivo

18

Eu gerei chaves usando GPG, executando o seguinte comando

gpg --gen-key

Agora eu preciso exportar o par de chaves para um arquivo; ou seja, chaves privadas e públicas para private.pgpe public.pgp, respectivamente. Como eu faço isso?

rochoso
fonte

Respostas:

27

Exportar chave pública

Este comando exportará uma versão blindada ascii da chave pública:

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

Exportar chave secreta

Este comando exportará uma versão blindada ascii da chave secreta:

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


Preocupações de segurança, backup e armazenamento

Uma chave pública PGP contém informações sobre o endereço de email. Isso geralmente é aceitável, pois a chave pública é usada para criptografar o email no seu endereço. No entanto, em alguns casos, isso é indesejável.

Na maioria dos casos de uso, a chave secreta não precisa ser exportada e não deve ser distribuída . Se o objetivo é criar uma chave de backup, você deve usar a opção de backup:

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

Isso exportará todas as informações necessárias para restaurar as chaves secretas, incluindo as informações do banco de dados confiável. Guarde as chaves secretas de backup fora da plataforma de computação e em um local físico seguro.

Se esta chave é importante para você, eu recomendo imprimir a chave no papel usando paperkey . E colocar a chave de papel em um cofre à prova de fogo / à prova d'água.

Servidores de chave pública

Em geral, não é aconselhável publicar chaves públicas pessoais em servidores-chave. Não existe um método para remover uma chave uma vez lançada e não existe um método para garantir que a chave no servidor foi colocada lá pelo suposto proprietário da chave.

É muito melhor colocar sua chave pública em um site que você possui ou controla. Algumas pessoas recomendam o keybase.io para distribuição. No entanto, esse método rastreia a participação em várias comunidades sociais e técnicas que podem não ser desejáveis ​​para alguns casos de uso.

Para os tecnicamente competentes, eu pessoalmente recomendo experimentar o serviço de descoberta de chaves no nível de domínio da webkey .

Carimbo de borracha
fonte
A chave exportada (segundo comando) está criptografada ou preciso criptografá-la sozinha antes de armazená-la em uma unidade USB?
Julian
1
@ Julian ... A chave secreta exportada tem a mesma proteção que a chave secreta que foi exportada. Se houver uma senha, a senha será necessária para importar a chave secreta.
RubberStamp 18/02/19
1
Fiz um backup usando o método acima, mas tolamente esqueci de testá-lo. A menos que esteja faltando alguma coisa, não consigo recuperar minha chave pública do método de backup especificado ( --export-options export-backup, etc). Estou perdendo alguma coisa ou entendi mal o tipo de backup que estava fazendo?
OMGtechy 5/08/19
A documentação sabe --export-secret-keys, mas não --export-secret-key.
Jarno
@OMGtechy Como você tentou recuperar as chaves? Eu poderia restaurar chaves públicas por gpg --import-options restore --import backupkeys.pgp, mas isso não restaura chaves secretas, somente as públicas, se backupkeys.pgp foi criado por gpg --output backupkeys.pgp --armor --export --export-options export-backup. No que --armornão é necessário e export-backuppode ser substituído por backup.
Jarno
2
  • Liste as chaves que você possui: gpg --list-secret-keys
  • Exporte a chave: gpg --export-secret-key name > ~/my-key.asc
  • Copie-o em outra máquina;
  • Importe a chave: gpg --import my-key.asc
Serj Sp
fonte