Dica rápida: É possível recriar a parte pública da sua chave RSA usando apenas a parte privada

É sabido pela maioria dos usuários de chaves RSA que elas são composta por um par de chaves chamadas de “chave pública” e “chave privada” e que caso você as perca, precisará criar outro par e substituí-lo onde quer que a antigo tenha sido usado, o que nem sempre é tão fácil. Mas o que poucos sabem ou não se recordam é que caso você tenha perdido apenas a parte pública (mas ainda tenha a parte privada) é possível extrair a parte pública novamente.

Chaves RSA são muito usadas para conexões SSH. Sejam servidores e appliances remotos ou serviços específicos como os populares repositórios Git, estas chaves são usadas em par onde a parte chamada de privada fica em um arquivo que estará devidamente protegido e seguro exclusivamente em sua máquina local, enquanto que o arquivo contendo a parte pública, você deverá enviar para o servidor SSH ou servidor Git que se deseja acessar.

Quem, por algum descuido ou acidente, já perdeu uma parte de sua chave deve saber a chateação que é substituí-la em todos os serviços onde elas são usadas, então ter um controle disso é importante.

Como a maioria dos usuários tomam o devido cuidado com estes preciosos arquivos, talvez a substituição por causa de perda não seja tão comum, daí o raro conhecimento sobre a possibilidade de gerar a parte pública novamente.

Extraindo a parte pública de uma chave RSA

O comando abaixo é o que faz isso. Considerando que “id_rsa” é o nome do arquivo com a chave privada e que está na minha máquina local, o comando ssh-keygen vai extrair a parte pública dele (devido ao parâmetro “-y”) e então salva-la no arquivo “id_rsa.pub”.

ssh-keygen -y -f id_rsa >id_rsa.pub

Este comando não retornará qualquer saída na tela, no entanto ambos os arquivos id_rsa (privada) e id_rsa.pub (pública) estarão no diretório atual para seu uso.

Aplicações para isso

Além de poder usar para restaurar o arquivo perdido por acidente, meu uso para este recurso é simplificar o backup de minhas chaves.

Ao invés de salvar os dois arquivos, eu salvo apenas as chaves privadas, no meu gerenciador de senhas e quando preciso da parte pública eu a obtenho usando o comando acima.

O processo para fazer isso pode varia de um gerenciador para outro, mas poderia ser feito manualmente também como mostrado, então fica a sugestão e faça bom uso desta dica.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.