On 2022-08-29 23:13, Pierre Colombier via frnog wrote:

En d'autres termes, quand il y a bien longtemps, sur une debian 8 far far away, j'ai fait un

ssh-keygen -t rsa -b 4096

ou bien aujourd'hui sur une debian 11

ssh-keygen -t rsa-sha2-256 -b 4096

C'est exactement pareil que -t rsa ou -t ssh-rsa car une clef RSA, ce sont deux nombres. Il n'y a pas de hash. Le -t rsa-sha2-256 est utilisé quand on signe des clefs avec un certificat.

je crée toujours une clé rsa de 4096 bits, j'ai bien toujours un fichier id_rsa.pub qui a le même format et commence par "ssh-rsa", mais par contre, il y a bien une différence, car quand bien même le client ssh serait récent, la première a cessé d'être acceptée par les serveur ssh récents, alors que la seconde fonctionne bien.

donc, le "public key blob" quand bien même il ne change pas de format, embarque bien quelque chose qui est basé sur un hash sha1 ou sha256 (ou autre).

Refait la même chose avec -t ssh-rsa et cela fonctionnera aussi. Ce n'est pas pour ça que ta clef n'est plus acceptée. C'est soit qu'elle est trop petite, soit que ce n'est pas elle qui est dans le known hosts.
Ou alors, le "blob" contient juste la clé publique + une étiquette qui dit quel algo de hash on est sensé employer et dans ce cas j'aurais bien aimé modifier mon fichier .pub pour employer le nouvel algo tout en gardant la même clé. ça me rendrait la migration beaucoup plus simple.

Nope. Le format est dans la RFC 4253. Ce sont deux nombres encodés.
https://datatracker.ietf.org/doc/html/rfc4253#section-6.6


---------------------------
Liste de diffusion du FRnOG
http://www.frnog.org/

Répondre à