Daniel Rodrigues
Posted on December 17, 2020
O Git tem a opção de assinar e verificar seus commits utilizando-se de chave GPG, para isso basta seguir os passos a seguir
Passo 1 - Gere uma nova chave GPG
1 - Digite o comando para gerar a chave GPG;
gpg --full-generate-key
2 - Selecione a opção: (1) RSA e RSA (padrão);
gpg (GnuPG) 2.2.4; Copyright (C) 2017 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Por favor selecione o tipo de chave desejado:
(1) RSA e RSA (padrão)
(2) DSA e Elgamal
(3) DSA (apenas assinatura)
(4) RSA (apenas assinar)
Sua opção?
3 - Digite o maior comprimento(4096), para sua nova chave GPG;
RSA chaves podem ter o seu comprimento entre 1024 e 4096 bits.
Que tamanho de chave você quer? (3072) 4096
4 - Decida qual o prazo de expiração para sua chave;
Por favor especifique por quanto tempo a chave deve ser válida.
0 = chave não expira
<n> = chave expira em n dias
<n>w = chave expira em n semanas
<n>m = chave expira em n meses
<n>y = chave expira em n anos
A chave é valida por? (0)
5 - Confirme o tempo de expiração da chave;
A chave não expira nunca
Está correto (s/N)?
6 - Digite seu nome completo;
GnuPG precisa construir uma ID de usuário para identificar sua chave.
Nome completo:
7 - Digite seu email;
Endereço de correio eletrônico:
8 - Crie um comentário para sua chave caso seja necessário;
Comentário:
9 - Confirme as informações que você acabou de preencher, basta digitar o para OK;
Você selecionou este identificador de usuário:
"Joao Ninguem <joao@ninguem.nada>"
Muda (N)ome, (C)omentário, (E)ndereço ou (O)k/(S)air?
10 - Digite uma senha segura para sua chave GPG e confirme a senha;
11 - Aguarde o processo de criação de sua chave finalizar;
Precisamos gerar muitos bytes aleatórios. É uma boa idéia realizar outra
atividade (digitar no teclado, mover o mouse, usar os discos) durante a
geração dos números primos; isso dá ao gerador de números aleatórios
uma chance melhor de conseguir entropia suficiente.
gpg: chave FD2B172CC4C9F3E4 marcada como plenamente confiável
gpg: revocation certificate stored as '/home/geekcom/.gnupg/openpgp-revocs.d/92518C10D23E004325112DB9FD2B172CC4C9F3E4.rev'
chaves pública e privada criadas e assinadas.
pub rsa4096 2020-04-28 [SC]
92518C10D23E004325112DB9FD2B172CC4C9F3E4
uid Joao Ninguem <joao@ninguem.nada>
sub rsa4096 2020-04-28 [E]
Neste momento sua chave GPG foi gerado com sucesso, agora é necessário adiciona-la ao GitHub.
Passo 2 - Adicionando uma chave GPG ao GitHub
1 - Use o seguinte comando para listar a chave GPG privada que você acabou de criar:
gpg --list-secret-keys --keyid-format LONG joao@ninguem.nada
Substitua joao@ninguem.nada
pelo e-mail que você usou para criar a chave.
2 - Copie o ID da chave GPG que começa com sec. No exemplo a seguir, é FD2B172CC4C9F3E4:
sec rsa4096/FD2B172CC4C9F3E4 2020-04-28 [SC]
92518C10D23E004325112DB9FD2B172CC4C9F3E4
uid [final] Joao Ninguem <joao@ninguem.nada>
ssb rsa4096/AB9EC40EA9DE16E3 2020-04-28 [E]
3 - Exporte a chave pública desse ID (substitua pelo seu ID da chave da etapa anterior):
gpg --armor --export FD2B172CC4C9F3E4
4 - Por fim, copie a chave pública e adicione-a nas configurações do seu perfil do GitHub em https://github.com/settings/keys
Passo 3 - Associando sua chave GPG ao Git
1 - Depois de criar sua chave GPG e adicioná-la à sua conta GitLab, é hora de informar ao Git qual chave usar.
gpg --list-secret-keys --keyid-format LONG joao@ninguem.nada
Substitua joao@ninguem.nada
pelo seu email.
2 - Copie o ID da chave GPG que começa com sec. No exemplo a seguir, é FD2B172CC4C9F3E4:
sec rsa4096/FD2B172CC4C9F3E4 2020-04-28 [SC]
92518C10D23E004325112DB9FD2B172CC4C9F3E4
uid [final] Joao Ninguem <joao@ninguem.nada>
ssb rsa4096/AB9EC40EA9DE16E3 2020-04-28 [E]
3 - Diga ao Git que deseja usar essa chave para assinar os seus commits:
git config --global user.signingkey FD2B172CC4C9F3E4
Substitua FD2B172CC4C9F3E4 pelo ID da sua chave GPG.
Passo 4 - Assinando commits com sua chave GPG
Depois de criar sua chave GPG e adicioná-la à sua conta, você pode começar a assinar seus commits:
1 - Continua como você costumava fazer, a única diferença é a adição da flag -S:
git commit -S -m "mensagem do meu commit"
2 - Digite a senha da sua chave GPG quando solicitada.
A partir de agora seus commits podem assinados com sua chave GPG sempre que desejar, no GitHub você poderá ver que seus commits estão assinados.
Posted on December 17, 2020
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.