Tidak dapat mengimpor kunci publik ke Keychain OSX

16

Saya membuat beberapa sertifikat S / MIME yang ditandatangani sendiri (menggunakan OSX Keychain & amp; OpenSSL) dan kemudian mengekspornya ke 3 file:

  • Sertifikat (.cer)
  • Kunci Pribadi (.p12)
  • Kunci Publik (.pem)

Saat mencoba mengimpor ini kembali ke Mac lain, Sertifikat dan Kunci Pribadi diimpor tanpa masalah. Tetapi Kunci Publik tidak dapat diimpor.

Sebagai gantinya saya mendapatkan pesan kesalahan berikut:

Sebuah kesalahan telah terjadi. Tidak dapat mengimpor item.

Isi saat ini tidak dapat diambil

Screenshot of OSX Keychain error when importing Public Key

Bagaimana saya bisa mengimpor kunci publik? Haruskah itu dikonversi ke format lain untuk impor?

Prembo
sumber
mengapa Anda ingin mengimpor kunci publik? Ini adalah kunci pribadi yang perlu Anda impor. Kunci publik ditinggalkan di server, kunci pribadi diekspor ke klien, dan hanya itu.
MariusMatutiae
Cukup adil - jadi tidak ada cara mengimpor kunci publik secara manual melalui Keychain (mis. Jika seseorang memberikan kunci publik mereka kepada Anda sebagai file, daripada mengirimi Anda email)?
Prembo
1
Anda dapat menggunakan scp untuk menyalin semua file dari satu ke yang lain, selama periode di mana koneksi kata sandi diizinkan. Kemudian ketika Anda memiliki semua kunci di tempat, Anda dapat menonaktifkan login kata sandi.
MariusMatutiae

Jawaban:

23

Ini bug di OSX. Anda dapat mengimpor dari baris perintah sesuai jawaban ini:

https://stackoverflow.com/a/11979625/59198

Perintahnya adalah:

security import pub_key.pem -k ~/Library/Keychains/login.keychain

Anda kemudian perlu mengganti nama kunci di keychain.app

Chris
sumber
Ke mana itu diimpor? Saya masih tidak dapat menemukannya di gantungan kunci.
huggie
@huggie Memuatnya dengan nama yang sangat umum di gantungan kunci, mungkin seperti 'kunci publik', mencari sesuatu yang baru di sana.
Chris
1

Sertifikat tersebut sebenarnya berisi salinan kunci publik (bersama dengan nama, dan tanda tangan dari otoritas sertifikat yang mengatakan nama itu dan kunci publik tersebut berjalan bersamaan). Biasanya Anda tidak perlu berurusan dengan kunci publik sebagai item terpisah jika Anda menggunakan sistem berbasis sertifikat seperti SMIME. Jika Anda mau, Anda bisa mengekstrak salinan kunci publik dari sertifikat menggunakan openssl x509 perintah.

(Saya ingin tahu apakah Keychain menolak untuk mengimpor kunci publik karena menganggapnya sudah memiliki salinan, dalam sertifikat? Pesan kesalahan Keychain biasanya cukup kabur.)

Wim Lewis
sumber
1

File .p12 dapat menampung pasangan kunci Anda. Anda akan dimintai kata sandi jika berisi kunci pribadi Anda. Gantungan kunci akan menunjukkan kunci pribadi dengan cara bersarang. Jika diimpor dengan benar seharusnya ditampilkan di bawah 'Sertifikat Saya'.

bbaassssiiee
sumber