TLDR: Use chaves RSA de 2048 bits.
A menos que você esteja usando um antigo cliente ou servidor SSH, você usará a versão 2 do protocolo.
Embora os algoritmos DSA e RSA sejam comparáveis em termos de força, as chaves DSA só podem ser de 1024 bits quando usadas pelo SSH, enquanto as chaves RSA não são limitadas. Chaves de 1024 bits estão se tornando inseguras com o poder de computação disponível hoje, e assim você quer pelo menos 2048 bits, o que significa RSA. (Também costumava haver problemas de patentes com o RSA que faziam com que o DSA fosse recomendado, mas esse não é mais o caso).
Praticamente todos os servidores aceitarão chaves DSA e RSA. (Algumas chaves específicas estão na lista negra devido a um erro do Debian , mas não há cDIFs não permitidos.) ECDSA é o novo entusiasmo, mas nem todos os servidores o suportam ainda e, portanto, não é amplamente utilizável. Uma vez que isso mude, o ECDSA será provavelmente o caminho a seguir.
Geralmente, você pode informar o tipo de chave pelo nome do arquivo, que geralmente é id_dsa
, id_rsa
ou id_ecdsa
. O comando file
também pode inspecionar os contêineres para determinar o tipo:
% file id_rsa
id_rsa: PEM RSA private key
Para determinar o tamanho da chave, você pode usar o comando openssl
:
% openssl rsa -in id_rsa -noout -text | head -n1
Enter pass phrase for id_rsa:
Private-Key: (4096 bit)
% openssl dsa -in id_dsa -noout -text | head -n1
read DSA key
Private-Key: (1024 bit)