Seria melhor criar um par de chaves GPG para cada caso de uso ou é considerado uma prática recomendada criar apenas um par de chaves GPG para vários casos de uso?
Aqui estão meus motivos para usar chaves GPG:
- para assinar e-mails
- para criptografar e-mails
- assinar compromissos
- para usá-lo com passe
Depende de qual proteção você acha que a chave merece. O que quero dizer é: se uma chave tivesse vários usos com requisitos de segurança muito diferentes, então deveria ser duas chaves diferentes.
Por exemplo, se ele criptografa seus dados financeiros (wallet.dat?) e precisa ser bem guardado, mas ao mesmo tempo ele criptografa seus e-mails de bate-papo ociosos e precisa ser copiado para cada desktop/laptop/telefone que você possui – essas devem ser chaves separadas.
Outros exemplos semelhantes seriam ter um par de chaves separado para correspondência comercial (por exemplo, se forçado a entregá-lo por motivos legais), um par de chaves separado para qualquer coisa que envolva cronjobs automatizados (por exemplo, a máquina de um desenvolvedor de software assinando automaticamente lançamentos noturnos de software) e assim por diante .
Observe que a assinatura e a criptografia sempre usam subchaves separadas no PGP, portanto, é fácil importar uma chave "parcial" nesse limite. Por exemplo, você pode ter um dispositivo que contém apenas a subchave de criptografia e é capaz de ler seus dados criptografados, enquanto ainda não consegue assinar nada em seu nome.
Além disso, o software PGP reconhece "assinar arquivos/mensagens" e "assinar chaves PGP" como dois propósitos distintos e permite que você tenha subchaves separadas para eles. (Mais precisamente, a chave primária/raiz é sempre usada para assinar as chaves PGP de outras pessoas, mas uma subchave pode ser usada para assinar dados gerais). assinar chaves PGP.
(O último é importante, porque não é apenas poder assinar as chaves de outras pessoas - embora isso ainda seja algo que deva ser altamente protegido - mas também poder assinar atualizações para sua própria chave, por exemplo, alterar a data de validade, adicionar novo e-mail endereços ou até mesmo documentos com foto, ou até mesmo revogando a chave.)
No entanto, todas as subchaves sob a mesma chave primária recebem aproximadamente a mesma "confiança" externamente. Por exemplo, você não pode ter duas subchaves de criptografia para propósitos específicos diferentes, eventualmente elas serão misturadas. Portanto, em situações em que você precisa separá-los por finalidade (por exemplo, pessoal versus trabalho), você precisaria de duas chaves PGP totalmente separadas.
(As subchaves são principalmente úteis para rotação de chaves, por exemplo, uma nova subchave de criptografia a cada ano ou duas subchaves de assinatura usando algoritmos diferentes - eu ainda uso uma chave RSA4096 para compatibilidade com sistemas antigos somente RSA, mas tenho uma subchave de assinatura Ed25519 para fazer o Git commit assinaturas muito menores do que seriam com RSA.)
Não sou especialista em PGP, mas digo a você que, a menos que você tenha diferentes sistemas e funções desconectados, usar uma única chave parece melhor.
Especialmente se você conseguir que outras pessoas assinem suas chaves, é mais fácil provar sua identidade se houver uma única chave e, se houver um problema, houver apenas 1 chave a ser repudiada.
Você pode querer ter subchaves - isso permitirá que você revogue algumas chaves individualmente, mas ainda mantendo 1 chave primária - o que pode permitir que você tenha uma segurança um pouco mais fraca em torno de algumas subchaves do que outras (leia https:/ /wiki.debian.org/Subkeys )
É um pouco antigo (mas a lógica não muda), https://security.stackexchange.com/questions/29851/how-many-openpgp-keys-should-i-make faz uma pergunta semelhante e chega ao mesmo conclusão que eu fiz.