Eu gerei chaves usando GPG, executando o seguinte comando
gpg --gen-key
Agora preciso exportar o par de chaves para um arquivo; ou seja, as chaves privadas e públicas para private.pgp
e public.pgp
, respectivamente. Como faço isso?
Comentários
Resposta
Exportar chave pública
Este comando exportará uma versão blindada ascii do 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
Questões de segurança, backup e armazenamento
Uma chave pública PGP contém informações cerca de um endereço de e-mail. Geralmente, isso é aceitável, pois a chave pública é usada para criptografar o e-mail para o 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 d istributed . Se o objetivo é 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 restaure as chaves secretas, incluindo as informações do banco de dados confiável. 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 imprimi-la em 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 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á nenhum método para garantir que a chave no servidor foi colocada lá por o 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 técnicos, eu pessoalmente recomendo experimentar o webkey serviço de descoberta de chave em nível de domínio.
Comentários
- A chave exportada (segundo comando) está criptografada ou eu preciso criptografá-lo sozinho antes de armazená-lo no ag uma unidade USB?
- @Julian … A chave secreta exportada tem a mesma proteção que a chave secreta que foi exportada. Se houvesse uma senha longa, ela é necessária para importar a chave secreta.
- Fiz um backup usando o método acima, mas esqueci-me de testá-lo tolamente. A menos que eu ' esteja faltando alguma coisa, não posso ' 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 ele estava fazendo? - A documentação conhece
--export-secret-keys
, mas não--export-secret-key
. - @OMGtechy Como você tentou recuperar a (s) chave (s)? Eu poderia restaurar as chaves públicas por
gpg --import-options restore --import backupkeys.pgp
, mas isso não restaura as chaves secretas, apenas as públicas, se backupkeys.pgp foi criado porgpg --output backupkeys.pgp --armor --export --export-options export-backup
. Nesse--armor
não é necessário eexport-backup
poderia ser substituído porbackup
.
Resposta
- Liste as chaves que você tem:
gpg --list-secret-keys
- Exporte a chave:
gpg --export-secret-key name > ~/my-key.asc
- Copie-a em outra máquina;
- Importe a chave:
gpg --import my-key.asc
Comentários
- Observe que
.asc
significa para ASCII, mas a saída degpg --list-secret-keys
é binária. - Na verdade, .asc é para
ASCII armored
e a saída é um texto cifrado. Você pode segurá-lo e ver por si mesmo. Além disso, como a maioria dos arquivos Linux, a extensão do arquivo também é arbitrária, não ' t tecnicamente precisa ser asc. @WeihangJian - Seria uma boa ideia remover o arquivo de chave depois de importado e testado com sucesso. Se o arquivo estiver lá, ele pode ser usado de forma maliciosa.
Resposta
Para export
SOMEKEYID chave pública para uma output
arquivo:
gpg --output public.pgp --export SOMEKEYID
Ao trabalhar com chaves secretas, geralmente é preferível não gravá-las em arquivos e, em vez disso, use SSH para copiá-los diretamente entre máquinas usando apenas gpg
e um pipe:
gpg --export-secret-key SOMEKEYID | ssh othermachine gpg --import
Se for necessário , no entanto, envie sua chave secreta para um arquivo, certifique-se de que está criptografado. Veja como fazer isso usando criptografia AES usando a abordagem 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
A última abordagem é ideal se você deseja criar um backup físico de suas chaves públicas e privadas para se proteger contra uma falha de disco quando não houver outra maneira de recuperar o acesso às suas chaves.
Consulte Movendo chaves GPG em particular para considerações adicionais.
Resposta
” GnuPG (também conhecido como PGP / GPG) “ Mais informações
Gerar chave: gpg --gen-key
Exibir todas as chaves: gpg --list-keys
Exportar chave pública:
gpg --export -a --output [path-to-public-key].asc [email-address]
Exportar chave secreta:
gpg -a --export-secret-keys > [path-to-secret-key].asc
gpg --full-generate-key
para ter uma interface completa para gerar chaves