In Accesso portachiavi su OS X, trova le chiavi pubbliche e private corrispondenti


14

Ho un paio di chiavi che sembrano essere state generate con gli stessi nomi. Vorrei sapere quale chiave pubblica corrisponde a quali chiavi private in modo da poterle rinominare / eliminare. È qualcosa di importante (mantenere la chiave pubblica) o viene generata una chiave pubblica ogni volta che si richiede un certificato?


Sei riuscito a trovare una soluzione per questo? Ho lo stesso problema e non riesco a trovare una risposta.
Axeva,

No, non l'ho fatto. La migliore soluzione che ho trovato è quella di dare loro un nome univoco per cominciare, sfortunatamente.
ACBurk,

Sì, non è terribilmente utile DOPO che abbiamo già fatto l'errore di non nominarli correttamente. ;) Ho visto rombi che suggeriscono che lo strumento da riga di comando OpenSSL potrebbe essere in grado di aiutare, ma non ho ancora capito come.
Axeva,

Risposte:


12

Immagino che tu sia stato in grado di aggirare il tuo problema poiché si tratta di un vecchio thread, ma sto solo scrivendo una risposta per qualsiasi riferimento futuro.

L'idea di base è esportare le tue chiavi pubbliche e private e usare openssl per visualizzarne il modulo. Le chiavi private / pubbliche corrispondenti avranno lo stesso modulo.

Ecco come vedere il modulo di una chiave privata:

  1. In Accesso Portachiavi esporta la tua chiave privata e seleziona il formato di file "Scambio di informazioni personali (.p12)". Questo creerà il file .p12.

  2. Avvia un terminale e usa openssl per convertire il tuo file .p12 in un file .pem:

    openssl pkcs12 -in key.p12 -out key.pem -nodes
    
  3. Usa openssl per visualizzare il modulo della chiave privata pem:

    openssl rsa -in key.pem -modulus -noout
    

Ecco come vedere il modulo di una chiave pubblica:

  1. In Keychain Access esporta la tua chiave pubblica e seleziona il formato di file "Privacy Enhanced Mail (.pem)". Questo creerà il file .pem.

  2. Questo file .pem è un file PEM PKCS # 1 (con un'intestazione -----BEGIN RSA PUBLIC KEY-----), mentre openssl può leggere solo PEM PKCS # 8 (con un'intestazione -----BEGIN PUBLIC KEY-----). Quindi apri la tua chiave pubblica esportata in TextEdit e rimuovi il RSAbit dall'intestazione e dal piè di pagina e salva le modifiche.

  3. Usa openssl per visualizzare il modulo della chiave pubblica pem:

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

Tieni inoltre presente che, in effetti, puoi anche eliminare le tue chiavi pubbliche e ricrearle dalle chiavi private (in questo modo potresti essere certo delle tue coppie corrispondenti). Per creare la chiave pubblica corrispondente da una chiave privata usare il seguente comando openssl:

openssl rsa -in key.pem -pubout -out pubkey.pem

1
Grazie, vecchia domanda ma sembra sempre un problema, quindi è bello avere finalmente una buona soluzione.
ACBurk,

1
Fantastico, proprio quello che stavo cercando. Grazie per la buona descrizione
Baza207,

Ho appena fatto di nuovo questa domanda su SuperUser, ma sono stato così fortunato a scoprire questa risposta già fornita .. +1 tutto intorno.
Tom Pace
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.