La réponse simple est: vous ne le faites pas.
Les clés SSH et les clés GnuPG (en fait, OpenPGP) sont complètement différentes, même si les deux protocoles peuvent utiliser des paires de clés RSA.
Et d'ailleurs, pourquoi voudriez-vous le faire? Même si vous deviez utiliser le même matériel de clé pour composer votre clé PGP, vous auriez toujours besoin de distribuer votre clé en tant que clé PGP. Vous n'avez probablement pas distribué votre clé publique SSH aux personnes avec lesquelles vous correspondez, donc d'un point de vue de la distribution de clés, il n'y a pas de différence: ils devront recevoir une clé publique de votre part. Et même si vous avez distribué votre clé publique SSH à d'autres personnes, elles devraient prendre des mesures supplémentaires pour pouvoir l'importer dans leur implémentation OpenPGP, ce qui peut ou non être facile.
Comme kasperd l'a très justement souligné, il ne doit y avoir qu'une seule façon d'interpréter (en particulier) une signature. Si vous deviez utiliser la même clé pour PGP et SSH, si quelqu'un pouvait vous inciter à signer un message spécialement conçu (qui est une capacité supposée dans certaines attaques de système de signature) en une seule, alors même si les deux systèmes sont sécurisés isolément, il il pourrait être possible d'élaborer un tel message d'une manière qui a une signification dans l'un des systèmes, mais une signification différente dans l'autre. Ce serait en soi une vulnérabilité. (Exploitable? Qui sait. Mais pourquoi prendre le risque?)
Les paires de clés PGP et SSH sont des clés à long terme, qui sont utilisées pour sécuriser les clés symétriques éphémères (message et session), ainsi que pour vérifier l'authenticité d'une partie distante. Cela fait de la clé privée PGP ou SSH une cible de valeur beaucoup plus élevée pour un attaquant que la clé symétrique correspondante. Si vous utilisez le même matériau de clé pour les deux, et qu'un attaquant est en mesure de le réaliser, cela ne fait qu'augmenter la valeur d'une attaque réussie sur cette paire de clés.
Sans avoir examiné l'un ou l'autre protocole en détail, j'imagine que reconnaître que le même matériel de clé est utilisé dans les deux serait probablement assez trivial, car la clé publique est essentiellement transmise en clair.
Générez simplement une nouvelle clé PGP. Si vous le souhaitez, faites-le RSA et de la même longueur que votre clé SSH. (Aucune personne sensée ne va y regarder de plus près que de vérifier l'empreinte digitale de toute façon.) Ensuite, distribuez la clé publique aux personnes avec lesquelles vous souhaitez correspondre, en tant que clé PGP. Ce sera beaucoup plus facile pour tout le monde, et très probablement plus sûr, au prix d'une petite quantité d'entropie du pool d'entropie aléatoire de votre système qui devrait être rapidement réapprovisionné de toute façon.
Si vous avez plusieurs clés sur votre trousseau de clés secret et que vous souhaitez spécifier celle qui doit être utilisée par défaut, utilisez les directives default-key
et éventuellement default-recipient{,-self}
dans votre ~ / .gnupg / gnupg.conf.