Di Akses Keychain di OS X, Temukan kunci publik dan pribadi yang cocok

14

Saya punya beberapa kunci yang sepertinya dibuat dengan nama yang sama. Saya ingin tahu kunci publik mana yang cocok dengan kunci privat mana sehingga saya dapat mengganti nama / menghapusnya. Apakah ini sesuatu yang penting (menjaga kunci publik) atau apakah kunci publik dihasilkan setiap kali Anda meminta sertifikat?

ACBurk
sumber
Apakah Anda dapat menemukan solusi untuk ini? Saya memiliki masalah yang sama dan sepertinya tidak dapat menemukan jawaban.
Axeva
Tidak, belum. Solusi terbaik yang saya temukan adalah memberi mereka nama yang lebih unik untuk memulai dengan sayangnya.
ACBurk
Ya, itu tidak terlalu membantu SETELAH kita sudah membuat kesalahan dengan tidak menyebutkannya dengan benar. ;) Saya telah melihat gemuruh yang menyarankan alat baris perintah OpenSSL mungkin dapat membantu, tapi saya belum menemukan caranya.
Axeva

Jawaban:

12

Saya kira Anda telah dapat mengatasi masalah Anda karena ini adalah utas lama, tetapi saya hanya menulis balasan untuk referensi di masa mendatang.

Ide dasarnya adalah untuk mengekspor kunci pribadi dan publik Anda, dan menggunakan openssl untuk melihat modulusnya. Pencocokan kunci pribadi / publik akan memiliki modulus yang sama.

Berikut ini cara melihat modulus kunci pribadi:

  1. Di Keychain Access, ekspor kunci pribadi Anda dan pilih format file "Personal Information Exchange (.p12)". Ini akan membuat file .p12.

  2. Buka terminal dan gunakan openssl untuk mengonversi file .p12 Anda menjadi file .pem:

    openssl pkcs12 -in key.p12 -out key.pem -nodes
    
  3. Gunakan openssl untuk melihat modulus kunci pribadi pem:

    openssl rsa -in key.pem -modulus -noout
    

Berikut ini cara melihat modulus kunci publik:

  1. Di Keychain Access, ekspor kunci publik Anda dan pilih format file "Privacy Enhanced Mail (.pem)". Ini akan membuat file .pem.

  2. File .pem ini adalah file PEM # PKCS # 1 (dengan sebuah header -----BEGIN RSA PUBLIC KEY-----), sementara openssl hanya dapat membaca PEM # PKCS # 8 (dengan sebuah header -----BEGIN PUBLIC KEY-----). Jadi buka kunci publik yang diekspor di TextEdit dan hapus RSAbit dari header dan footer, dan simpan perubahan.

  3. Gunakan openssl untuk melihat modulus kunci publik pem:

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

Harap perhatikan juga bahwa sebenarnya, Anda juga dapat menghapus kunci publik dan membuatnya kembali dari kunci privat (sehingga Anda dapat memastikan pasangan yang cocok dengan Anda). Untuk membuat kunci publik yang cocok dari kunci pribadi gunakan perintah openssl berikut:

openssl rsa -in key.pem -pubout -out pubkey.pem
quentinadam
sumber
1
Terima kasih, pertanyaan lama tetapi sepertinya selalu menjadi masalah, jadi senang akhirnya memiliki solusi yang bagus.
ACBurk
1
Cemerlang, hanya apa yang saya cari. Terima kasih atas uraiannya yang bagus.
Baza207
Saya baru saja menanyakan pertanyaan ini lagi di SuperUser, tetapi sangat beruntung menemukan jawaban ini sudah diberikan .. +1 ada di sekitar.
Tom Pace