OSXキーチェーンに公開キーをインポートできません


21

いくつかの自己署名S / MIME証明書を作成し(OSXキーチェーンとOpenSSLを使用)、これらを3つのファイルにエクスポートしました。

  • 証明書(.cer)
  • 秘密鍵(.p12)
  • 公開鍵(.pem)

これらを別のMacにインポートしようとすると、証明書と秘密キーが問題なくインポートされます。ただし、公開キーはインポートできません。

代わりに、次のエラーメッセージが表示されます。

エラーが発生しました。アイテムをインポートできません。

今回の内容は取得できません

公開鍵をインポートするときのOSXキーチェーンエラーのスクリーンショット

公開鍵をインポートするにはどうすればよいですか?インポートのために別の形式に変換する必要がありますか?


なぜ公開鍵をインポートしたいのですか?インポートする必要があるのは秘密キーです。公開鍵はサーバーに残され、秘密鍵はクライアントにエクスポートされます。それだけです。
MariusMatutiae 14年

結構です-だから、キーチェーン経由で公開鍵を手動でインポートする方法はありません(たとえば、誰かがあなたに電子メールを送信するのではなく、公開鍵をファイルとして提供した場合)?
Prembo 14年

1
パスワード接続が許可されている期間中、scpを使用してすべてのファイルを一方から他方にコピーできます。その後、すべてのキーを設定したら、パスワードログインを無効にすることができます。
MariusMatutiae 14年

回答:


31

OSXのバグです。次の回答に従って、コマンドラインからインポートできます。

/programming//a/11979625/59198

コマンドは次のとおりです。

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

次に、keychain.appのキーの名前を変更する必要があります。


どこにインポートしますか?私はまだキーチェーンでそれを見つけることができません。
huggie

@huggieキーチェーン内の本当に一般的な名前、おそらく「公開鍵」のようなものをロードし、そこで新しいものを探します。
クリス

1

証明書には、実際には公開キーのコピーが含まれています(名前と、その名前とその公開キーが一致することを示す認証局からの署名が含まれています)。通常、SMIMEのような証明書ベースのシステムを使用している場合、公開キーを個別のアイテムとして扱う必要はありません。必要に応じて、openssl x509コマンドを使用して証明書から公開鍵のコピーを抽出できます。

(キーチェーンが証明書に既にコピーがあると考えているため、キーチェーンが公開キーのインポートを拒否しているのではないかと思いますか?キーチェーンのエラーメッセージは通常かなり曖昧です。)


1

.p12ファイルには、キーペアを保持できます。秘密鍵が含まれている場合、パスワードの入力を求められます。キーチェーンは、ネストされた方法で秘密鍵を表示します。正しくインポートされると、「マイ証明書」の下に表示されます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.