Die einfache Antwort lautet: Sie tun es nicht.
SSH-Schlüssel und GnuPG-Schlüssel (OpenPGP) sind völlig unterschiedlich, obwohl beide Protokolle RSA-Schlüsselpaare verwenden können.
Und außerdem, warum würdest du es tun wollen? Selbst wenn Sie dasselbe Schlüsselmaterial zur Erstellung Ihres PGP-Schlüssels verwenden würden, müssten Sie Ihren Schlüssel dennoch als PGP-Schlüssel verteilen. Wahrscheinlich haben Sie Ihren öffentlichen SSH-Schlüssel nicht an die Personen verteilt, mit denen Sie korrespondieren. Aus Sicht der Schlüsselverteilung besteht also kein Unterschied: Sie müssen einen öffentlichen Schlüssel von Ihnen erhalten. Und selbst wenn Sie Ihren öffentlichen SSH-Schlüssel an andere Personen verteilt haben, müssten diese einige zusätzliche Schritte unternehmen, um ihn in ihre OpenPGP-Implementierung zu importieren, was möglicherweise nicht einfach ist.
Wie Kasperd ganz zu Recht betonte, muss es nur einen Weg geben, eine Signatur (insbesondere) zu interpretieren. Wenn Sie für PGP und SSH denselben Schlüssel verwenden und jemand Sie dazu verleiten könnte, eine speziell gestaltete Nachricht (was bei bestimmten Signatursystemangriffen als möglich angesehen wird) in einer einzigen zu signieren, ist dies auch dann der Fall, wenn beide Systeme für sich genommen sicher sind Möglicherweise ist es möglich, eine solche Nachricht so zu gestalten, dass sie in einem der Systeme eine Bedeutung hat, in dem anderen jedoch eine andere. Das wäre an sich schon eine Schwachstelle. (Ausnutzbar? Wer weiß. Aber warum die Chance nutzen?)
Sowohl PGP- als auch SSH-Schlüsselpaare sind Langzeitschlüssel, mit denen vorübergehende (Nachrichten- und Sitzungs-) symmetrische Schlüssel gesichert und die Authentizität einer Gegenstelle überprüft werden. Dies macht den privaten PGP- oder SSH-Schlüssel zu einem viel höherwertigen Ziel für einen Angreifer als den entsprechenden symmetrischen Schlüssel. Wenn Sie für beide das gleiche Schlüsselmaterial verwenden und ein Angreifer dies feststellen kann, erhöht dies nur den Wert eines erfolgreichen Angriffs auf dieses Schlüsselpaar.
Ohne eines der beiden Protokolle im Detail betrachtet zu haben, stelle ich mir vor, dass es ziemlich trivial wäre, zu erkennen, dass in beiden das gleiche Schlüsselmaterial verwendet wird, da der öffentliche Schlüssel im Grunde genommen im Klaren übertragen wird.
Erstellen Sie einfach einen neuen PGP-Schlüssel. Wenn Sie möchten, dann machen Sie es RSA und von der gleichen Länge wie Ihr SSH-Schlüssel. (Kein vernünftiger Mensch wird es sich näher ansehen, als den Fingerabdruck zu überprüfen.) Verteilen Sie dann den öffentlichen Schlüssel als PGP-Schlüssel an die Personen, mit denen Sie korrespondieren möchten. Es wird für jeden viel einfacher und sehr wahrscheinlich sicherer sein, wenn eine kleine Menge Entropie aus dem zufälligen Entropiepool Ihres Systems entnommen wird, die ohnehin schnell wieder aufgefüllt werden sollte.
Wenn Sie mehrere Schlüssel in Ihrem geheimen Schlüsselbund haben und angeben möchten, welcher standardmäßig verwendet werden soll, verwenden Sie die Anweisungen default-key
und möglicherweise default-recipient{,-self}
in Ihrer ~ / .gnupg / gnupg.conf.