Skip to main content

Gerar uma nova chave GPG

Caso você não tenha uma chave GPG atual, é possível gerar uma nova para usar na assinatura de commits e tags.

Algoritmos de chave GPG suportados

GitHub suporta vários algoritmos de chave GPG. Se você tentar adicionar uma chave gerada com um algoritmo não suportado, você pode encontrar um erro.

  • RSA
  • ElGamal
  • DSA
  • ECDH
  • ECDSA
  • EdDSA

Gerar uma chave GPG

Observação: antes de gerar uma nova chave GPG, verifique seu endereço de email. Se você ainda não o verificou, não pode assinar commits nem tags com o GPG. Para obter mais informações, confira "Como verificar seu endereço de email".

  1. Baixe e instale as ferramentas de linha de comando do GPG para seu sistema operacional. A instalação da última versão de seu sistema operacional é recomendada.

  2. Abra TerminalTerminalGit Bash.

  3. Gere um par de chaves GPG. Como há várias versões do GPG, talvez seja necessário consultar a página de manual relevante para encontrar o comando de geração de chave apropriado. A sua chave deve usar RSA.

    • Se a sua versão for 2.1.17 ou posterior, cole o texto abaixo para gerar um par de chaves GPG.
      Shell
      $ gpg --full-generate-key
    • Se você não estiver usando a versão 2.1.17 ou superior, o comando gpg --full-generate-key não funcionará. Cole o texto abaixo e passe para a etapa 6.
      Shell
      $ gpg --default-new-key-algo rsa4096 --gen-key
  4. No prompt, especifique o tipo de chave desejada ou pressione Enter para aceitar o padrão.

  5. No prompt, especifique o tamanho de chave desejado ou pressione Enter para aceitar o padrão. A chave precisa ter, pelo menos, 4096 bits.

  6. Digite o prazo de validade da chave. Pressione Enter para especificar a seleção padrão, indicando que a chave não vence. A menos que uma data de validade seja necessária, recomendamos aceitar o padrão.

  7. Verifique se suas seleções estão corretas.

  8. Insira seu ID de usuário.

    Observação: quando precisar inserir seu endereço de email, insira o endereço de email verificado para sua conta do GitHub. Para manter seu endereço de email privado, use seu endereço de email no-reply fornecido pelo GitHub. Para obter mais informações, confira "Como verificar seu endereço de email" e "Como configurar seu endereço de email de commit".

  9. Digite uma frase secreta segura.

  10. Use o comando gpg --list-secret-keys --keyid-format=long para listar a forma longa das chaves GPG para as quais você tem uma chave pública e privada. Uma chave privada é necessária para assinar commits ou tags.

    Shell
    $ gpg --list-secret-keys --keyid-format=long

    Observação: algumas instalações de GPG no Linux podem exigir o uso de gpg2 --list-keys --keyid-format LONG para ver uma lista das chaves existentes. Nesse caso, você também precisará configurar o Git para usar gpg2 executando git config --global gpg.program gpg2.

    1. Da lista de chaves GPG, copie a forma longa do ID da chave GPG que você gostaria de usar. Neste exemplo, a ID da chave GPG é `3AA5C34371567BD2`: ```shell{:copy} $ gpg --list-secret-keys --keyid-format=long /Users/hubot/.gnupg/secring.gpg ------------------------------------ sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10] uid Hubot ssb 4096R/42B317FD4BA89E7A 2016-03-10 ```
  11. Cole o texto abaixo, substituindo o ID da chave GPG que você quer usar. Neste exemplo, a ID da chave GPG é 3AA5C34371567BD2:

    Shell
    $ gpg --armor --export 3AA5C34371567BD2
    # Prints the GPG key ID, in ASCII armor format
  12. Copie a chave GPG, começando com -----BEGIN PGP PUBLIC KEY BLOCK----- e terminando com -----END PGP PUBLIC KEY BLOCK-----.

  13. Adicione a chave GPG à sua conta do GitHub.

Leitura adicional