Suchen Sie in Keychain Access unter OS X nach übereinstimmenden öffentlichen und privaten Schlüsseln

4570
ACBurk

Ich habe ein paar Schlüssel, die mit den gleichen Namen generiert wurden. Ich würde gerne wissen, welcher öffentliche Schlüssel mit welchen privaten Schlüsseln übereinstimmt, damit ich sie umbenennen / löschen kann. Ist dies etwas, das wichtig ist (um den öffentlichen Schlüssel zu bleiben) oder wird bei jeder Anforderung eines Zertifikats ein öffentlicher Schlüssel generiert?

12
Konnten Sie dafür eine Lösung finden? Ich habe das gleiche Problem und kann scheinbar keine Antwort finden. Axeva vor 13 Jahren 0
Nein, habe ich nicht. Die beste Lösung, die ich gefunden habe, ist, ihnen leider zunächst einen eindeutigeren Namen zu geben. ACBurk vor 13 Jahren 0
Ja, das ist nicht besonders hilfreich, nachdem wir den Fehler gemacht haben, sie nicht richtig zu benennen. ;) Ich habe Rumpeln gesehen, die darauf hindeuten, dass das OpenSSL-Befehlszeilentool möglicherweise helfen kann, aber ich habe noch nicht herausgefunden, wie es geht. Axeva vor 13 Jahren 0

1 Antwort auf die Frage

10
quentinadam

Ich vermute, Sie konnten Ihr Problem umgehen, da dies ein alter Thread ist, aber ich schreibe nur eine Antwort für zukünftige Fragen.

Die grundlegende Idee ist, Ihre privaten und öffentlichen Schlüssel zu exportieren und openssl zu verwenden, um deren Modul anzuzeigen. Übereinstimmende private / öffentliche Schlüssel haben den gleichen Modul.

So sehen Sie den E-Modul eines privaten Schlüssels:

  1. Exportieren Sie in Keychain Access Ihren privaten Schlüssel und wählen Sie das Dateiformat "Personal Information Exchange (.p12)" aus. Dadurch wird eine .p12-Datei erstellt.

  2. Starten Sie ein Terminal und konvertieren Sie Ihre .p12-Datei mit openssl in eine .pem-Datei:

    openssl pkcs12 -in key.p12 -out key.pem -nodes 
  3. Verwenden Sie openssl, um den Modul des privaten Pem-Schlüssels anzuzeigen:

    openssl rsa -in key.pem -modulus -noout 

So sehen Sie den Modul eines öffentlichen Schlüssels:

  1. Exportieren Sie in Keychain Access Ihren öffentlichen Schlüssel und wählen Sie das Dateiformat "Privacy Enhanced Mail (.pem)" aus. Dadurch wird eine PEM-Datei erstellt.

  2. Diese PEM-Datei ist eine PKCS # 1-PEM-Datei (mit einem Header -----BEGIN RSA PUBLIC KEY-----), während openssl nur PKCS # 8-PEM (mit einem Header -----BEGIN PUBLIC KEY-----) lesen kann . Öffnen Sie also Ihren exportierten öffentlichen Schlüssel in TextEdit, entfernen Sie das RSABit aus der Kopf- und Fußzeile und speichern Sie die Änderungen.

  3. Verwenden Sie openssl, um den Modul des öffentlichen Pem-Schlüssels anzuzeigen:

    openssl rsa -pubin -in pubkey.pem -modulus -noout 

Bitte beachten Sie auch, dass Sie tatsächlich auch Ihre öffentlichen Schlüssel löschen und aus den privaten Schlüsseln neu erstellen können (auf diese Weise könnten Sie sich Ihrer passenden Paare sicher sein). Um den übereinstimmenden öffentlichen Schlüssel aus einem privaten Schlüssel zu erstellen, verwenden Sie den folgenden Befehl openssl:

openssl rsa -in key.pem -pubout -out pubkey.pem 
Danke, alte Frage, aber immer ein Problem zu sein, es ist schön, endlich eine gute Lösung zu haben. ACBurk vor 11 Jahren 1
Genial, genau das, wonach ich gesucht habe. Danke für die gute Beschreibung. Baza207 vor 11 Jahren 1
Ich habe diese Frage gerade noch einmal auf SuperUser gestellt, aber ich hatte das Glück, diese Antwort bereits zu erfahren. +1 rundum. Tom Pace vor 10 Jahren 0