Introdução
A necessidade de documentar este processo, apesar de simples, foi a falta de um material específico em português do Brasil. O “problema” surgiu durante o Curso de Empacotamento Debian do Prof. Kretcheu, quando precisei corrigir um erro no meu sobrenome em minha chave GPG (GNU Privacy Guard). O processo vale para outros metadados relacionados à chave, como fotos de identificação, validações de UIDs, entre outros.
Sem mais delongas, vamos para o passo-a-passo.
Passo-a-passo
Obtendo o fingerprint
Primeiramente devemos obter o fingerprint da chave que queremos alterar rodando o seguinte comando com privilégios de root:
# gpg --list-keys
A saída será algo como:
------------------------
pub <suas-informações>
<fingerprint-pública-da-sua-chave>
uid [ultimate] <nome-completo> <e-mail>
sub <informações-de-data-e-expiração-da-chave>
Na segunda linha da saída do comando estará o fingerprint. No caso, o meu é 84D9D20F2CCF0915F273158DEF28AA2175D4333E. Copie o código do seu para editar a chave.
Obs: lembrando que essas são as informações da minha chave pública. Na sua, obviamente, as informações terão metadados diferentes da minha.
Editando metadados
Para editar a chave, vamos rodar o seguinte comando com privilégios de root:
gpg --edit-key <código-do-fingerprint>
Um terminal do programa GPG se abrirá. Se você digitar ?
nesse terminal seguido de enter, uma lista de opções de edição aparecerá:
quit sair deste menu
save gravar e sair
help mostrar esta ajuda
fpr show key fingerprint
grip show the keygrip
list lista chave e identificadores de utilizadores
uid seleciona ID de utilizador N
key select subkey N
check check signatures
sign sign selected user IDs [* see below for related commands]
lsign sign selected user IDs locally
tsign sign selected user IDs with a trust signature
nrsign sign selected user IDs with a non-revocable signature
adduid adiciona um novo ID de utilizador
addphoto adiciona um identificador fotográfico
deluid delete selected user IDs
addkey add a subkey
addcardkey add a key to a smartcard
keytocard move a key to a smartcard
bkuptocard move a backup key to a smartcard
delkey delete selected subkeys
addrevoker adiciona uma chave de revocação
delsig delete signatures from the selected user IDs
expire change the expiration date for the key or selected subkeys
primary flag the selected user ID as primary
pref lista preferências (perito)
showpref lista preferências (detalhadamente)
setpref set preference list for the selected user IDs
keyserver set the preferred keyserver URL for the selected user IDs
notation set a notation for the selected user IDs
passwd muda a frase secreta
trust muda os valores de confiança
revsig revoke signatures on the selected user IDs
revuid revoke selected user IDs
revkey revoke key or selected subkeys
enable enable key
disable disable key
showphoto show selected photo IDs
clean compact unusable user IDs and remove unusable signatures from key
minimize compact unusable user IDs and remove all signatures from key
Repare que diversas edições são possíveis. Como didática, vamos alterar nome, e-mail, password e colocar uma foto de identificação em nossa chave.
Editando nome, sobrenome, comentário e e-mail
Não é possível editar um nome já digitado em uma determinada UID. O que vamos fazer é acrescentar um UID novo com o nome correto e apagar o UID antigo com o nome errado. Para isso vamos rodar o seguinte comando no terminal do GPG:
adduid
O programa solicitará o Nome Completo, E-mail e um Comentário, caso deseje fazer algum. Eu uso o campo comentário para colocar meu nickname que uso nas comunidades, mas você pode deixar em branco se quiser. No final do processo digite O
(de OK) seguido de Enter para confirmar a adição do UID novo.
Agora vamos listar nossa chave para que vejamos o número do UID novo. Digite o seguinte comando no terminal do GPG:
list
Aparecerá algo como:
[ultimate] (1). Joaum das Colvis <joaodascouves@servidor.net>
[unknow] (2). João das Couves <joaodascouves@servidor.net>
Conseguimos notar que o UID novo é o de número 2
. Queremos apagar o UID 1
que está com o sobrenome errado. Para isso vamos selecionar o UID 1 com o comando:
uid 1
Repare que o UID 1 ficará com um asterisco ao lado. Isto quer dizer que você selecionou o UID 1. TENHA CERTEZA QUE SELECIONOU O UID QUE DESEJA EXCLUIR.
Para excluir o UID com o nome errado, digite o seguinte comando:
deluid
Com o comando list
, repare agora que teremos apenas o UID com o nome correto que adicionamos:
[unknow] (1). João das Couves <joaodascouves@servidor.net>
O UID estará com a etiqueta [unknow]. Para validarmos, usaremos o seguinte comando no terminal do GPG:
trust
A seguinte lista de opções aparecerá:
1 = I don't know or won't say
2 = I do NOT trust
3 = I trust marginally
4 = I trust fully
5 = I trust ultimately
m = back to the main menu
Tome sua decisão. Se quiser deixar a etiqueta como [ultimate] como no UID antigo, basta digitar o número 5 seguido de enter.
Cabe ressaltar que nenhuma dessas alterações é salva na chave. Para salvar e fazer as alterações que fizemos, digite o comando:
save
Dessa forma você voltará para o shell e poderá checar seu UID alterado da sua chave com o comando:
gpg --list-keys
Alterando senha da chave
Entre novamente no modo de edição de chaves do GPG com privilégios de root:
# gpg --edit-key <fingerprint>
Digite o seguinte comando no terminal do GPG:
passwd
Aparecerá uma tela solicitando sua senha atual. Digite-a e dê OK. A tela seguinte pedirá sua nova senha. Complete o campo duas vezes com a senha nova e dê OK. Ele solicitará agora a nova senha para acessar o terminal GPG novamente.
Pronto. Sua senha da chave foi alterada.
Adicionando uma foto de identificação à chave
Tenha uma foto no formato JPEG de tamanho 240x288 (formato e tamanho solicitados pelo GPG. Fotos muito grandes podem causar transtornos com tamanho da chave em kb) no diretório onde você executará o comando de edição de metadados do GPG:
# gpg --edit-key <fingerprint>
No terminal do GPG, execute o seguinte comando:
addphoto
O GPG solicitará o nome da foto. Digite nome-da-imagem.jpeg, confirme com y
(de yes) e aperte enter.
Salve a alteração com o seguinte comando:
save
Conclusão
Apresentei aqui apenas algumas possibilidades de edição de metadados em uma chave GPG, mas muitas outras são possíveis. Basta checar o menu de opções do GPG com o comando help
ou com ?
e escolher o que atende sua necessidade.
Espero que essa documentação tenha te ajudado a ser um pouco mais livre!
>> Home