Uma vez que diversos desenvolvedores encontram-se em roadshows ou conferências, estes eventos se tornaram uma boa maneira de pessoas assinarem suas chaves GnuPG e melhorar a cadeia de confiança. Especialmente para pessoas que são novas no projeto, assinaturas de chaves e encontros com outros desenvolvedores são muito interessantes.
Este documento tem como objetivo ajudá-lo com a organização de uma sessão de assinatura de chaves. Note que todos os exemplos usam keyring.debian.org como servidor de chaves. Se a chave em questão não está no Debian Keyring, substitua keyring.debian.org por um servidor público como wwwkeys.pgp.net, por exemplo. (Que apesar do nome também armazena chaves GnuPG.)
As pessoas devem assinar uma chave somente sob pelo menos duas condições
Mais importante, caso o proprietário da chave não esteja participando ativamente na troca, você não estará apto a completar os requisitos 1 ou 2. Ninguém pode completar a parte do proprietário da chave do requisito 1 em nome do proprietário da chave, uma vez que o agente poderia substituir a fingerprint por uma chave PGP diferente com o nome do proprietário da chave na mesma e fazer com que alguém assine a chave errada.
gpg --gen-key.
gpg --keyserver keyring.debian.org --recv-keys 0xDEADBEEF
Note que podemos usar os últimos oito dígitos hexadecimais da fingerprint nesta e em outras operações GnuPG. O 0x na frente também é opcional.
gpg --edit-key 0xDEADBEEF
uid n, onde n é o número da uid mostrada no
menu. Você pode também pressionar enter para assinar todas as uids. sign. Será então mostrada a
fingerprint e o tamanho da chave que você deve comparar com os dados
obtidos da pessoa que você conheceu.
quit
gpg --list-sigs 0xDEADBEEF
Você deverá ver seu próprio nome e fingerprint (na forma abreviada) na saída.
gpg --export -a 0xDEADBEEF > someguys.key
A opção -a exporta a chave no formato ASCII assim a mesma
pode ser enviada via e-mail sem a possibilidade de corrupção.
gpg --import mysigned.key
gpg --keyserver keyring.debian.org --send-keys <your key id>
Pode demorar um tempo até que os mantenedores do keyring atualizem sua chave portanto seja paciente. Você deverá também fazer o upload de sua chave atualizada para os servidores de chaves públicos.
O pacote Debian signing-party (festa de assinaturas) oferece algumas ferramentas para ajudar você com este processo. gpg-key2ps transfora uma chave GnuPG num arquivo PostScript para imprimir "paper slips" com sua fingerprint, e gpg-mailkeys vai enviar uma mensagem com uma chave assinada para seu autor. O pacote também inclui caff que é uma ferramenta um pouco mais avançada. Veja a documentação do pacote para mais informações.
Você nunca deverá assinar uma chave para alguém que você não tenha conhecido pessoalmente. Assinar uma chave baseado em qualquer outra coisa que não seja o conhecimento pessoal destrói a utilidade da cadeia de confiança. Caso um amigo seu apresente seu documento de identificação e sua fingerprint para outros desenvolvedores, mas você não esteja lá para verificar que a fingerprint pertence a você, o que outros desenvolvedores terão para ligar a fingerprint com a identificação? Eles têm apenas a palavra do amigo, e as outras assinaturas em sua chave -- isto não é melhor do que se eles assinassem sua chave somente porque outras pessoas assinaram!
É legal ter mais assinaturas em sua chave e é tentador cortar alguns passos durante o percurso. Mas possuir assinaturas confiáveis é mais importante do que ter muitas assinaturas, portanto é muito importante que mantenhamos o processo de assinaturas de chaves o mais puro possível. Assinar a chave de alguém é uma confirmação de que você possui evidências da identidade do portador da chave. Caso você a assine quando você realmente não a conhece, a cadeia de confiança não mais poderá ser confiada.