Como exportar uma chave privada GPG e uma chave pública para um arquivo
772
Eu gerei chaves usando GPG, executando o seguinte comando
gpg --gen-key
Agora 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?
Uma chave pública PGP contém informações sobre o endereço de e-mail de uma pessoa. Isso geralmente é aceitável, pois a chave pública é usada para criptografar e-mails para seu endereço. No entanto, em alguns casos, isso é indesejável.
Para a maioria dos casos de uso, a chave secreta não precisa ser exportada e não deve ser distribuída . Se o objetivo for criar uma chave de backup, você deve usar a opção de backup:
Isso exportará todas as informações necessárias para restaurar as chaves secretas, incluindo as informações do banco de dados de confiança. Certifique-se de armazenar todas as chaves secretas de backup fora da plataforma de computação e em um local físico seguro.
Se esta chave for importante para você, recomendo imprimir a chave em papel usando paperkey . E colocando a chave de papel em um cofre à prova de fogo/à prova d'água.
Servidores de chave pública
Em geral, não é aconselhável postar chaves públicas pessoais em servidores de chaves. Não há método para remover uma chave depois de postada e não há 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 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 adeptos técnicos, eu pessoalmente recomendo experimentar o serviço de descoberta de chave de nível de domínio da webkey .
Para exporta chave pública SOMEKEYID de um outputarquivo:
gpg --output public.pgp --export SOMEKEYID
Ao trabalhar com chaves secretas, geralmente é preferível não gravá-las em arquivos e, em vez disso, usar SSH para copiá-las diretamente entre máquinas usando only gpge um pipe:
No entanto, se você precisar enviar sua chave secreta para um arquivo, certifique-se de que ela esteja criptografada. Veja como fazer isso usando a criptografia AES usando a abordagem Dark Otter :
A última abordagem é ideal se você deseja criar um backup físico de suas chaves públicas e privadas para proteger contra uma falha de disco quando não existe outra maneira de recuperar o acesso às suas chaves.
Nota: Se você tiver apenas uma cópia de sua chave privada, mas não sua chave pública, é possível recuperar sua chave pública reimportando a chave privada, confiando nela e depois exportando novamente.
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 e-mail de uma pessoa. Isso geralmente é aceitável, pois a chave pública é usada para criptografar e-mails para seu endereço. No entanto, em alguns casos, isso é indesejável.
Para a maioria dos casos de uso, a chave secreta não precisa ser exportada e não deve ser distribuída . Se o objetivo for criar uma chave de backup, você deve usar a opção de backup:
gpg --output backupkeys.pgp --armor --export-secret-keys --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 de confiança. Certifique-se de armazenar todas as chaves secretas de backup fora da plataforma de computação e em um local físico seguro.
Se esta chave for importante para você, recomendo imprimir a chave em papel usando paperkey . E colocando a chave de papel em um cofre à prova de fogo/à prova d'água.
Servidores de chave pública
Em geral, não é aconselhável postar chaves públicas pessoais em servidores de chaves. Não há método para remover uma chave depois de postada e não há 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 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 adeptos técnicos, eu pessoalmente recomendo experimentar o serviço de descoberta de chave de nível de domínio da webkey .
gpg --list-secret-keys
gpg --export-secret-key name > ~/my-key.asc
gpg --import my-key.asc
Para
export
a chave pública SOMEKEYID de umoutput
arquivo:Ao trabalhar com chaves secretas, geralmente é preferível não gravá-las em arquivos e, em vez disso, usar SSH para copiá-las diretamente entre máquinas usando only
gpg
e um pipe:No entanto, se você precisar enviar sua chave secreta para um arquivo, certifique-se de que ela esteja criptografada. Veja como fazer isso usando a criptografia AES usando a abordagem Dark Otter :
A última abordagem é ideal se você deseja criar um backup físico de suas chaves públicas e privadas para proteger contra uma falha de disco quando não existe outra maneira de recuperar o acesso às suas chaves.
Nota: Se você tiver apenas uma cópia de sua chave privada, mas não sua chave pública, é possível recuperar sua chave pública reimportando a chave privada, confiando nela e depois exportando novamente.
Consulte Movendo chaves GPG de forma privada para considerações adicionais.
"GnuPG (também conhecido como PGP/GPG)" Mais informações
Gerar chave:
gpg --gen-key
Veja todas as chaves:
gpg --list-keys
Exportar chave pública:
Exportar chave secreta: