无法将公钥导入 OSX Keychain

无法将公钥导入 OSX Keychain

我创建了几个自签名的 S/MIME 证书(使用 OSX Keychain 和 OpenSSL),然后将它们导出到 3 个文件中:

  • 证书 (.cer)
  • 私钥(.p12)
  • 公钥 (.pem)

当尝试将它们导入另一台 Mac 时,证书和私钥可以顺利导入。但公钥无法导入。

相反,我收到以下错误消息:

发生错误。无法导入项目。

本次内容无法检索

导入公钥时 OSX Keychain 错误的屏幕截图

如何导入公钥?是否需要将其转换为其他格式才能导入?

答案1

这是 OSX 中的一个错误。您可以按照以下答案从命令行导入:

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

命令是:

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

然后你需要在 keychain.app 中重命名密钥

答案2

证书实际上包含公钥的副本(以及名称和证书颁发机构的签名,表明该名称和公钥是一致的)。如果您使用的是基于证书的系统(如 SMIME),通常不需要将公钥作为单独的项目处理。如果您愿意,可以使用 openssl 命令从证书中提取公钥的副本x509

(我想知道 Keychain 是否拒绝导入公钥,因为它认为证书中已经有一份副本?Keychain 的错误消息通常很模糊。)

答案3

.p12 文件可以保存您的密钥对。如果其中包含您的私钥,系统将提示您输入密码。钥匙串将以嵌套方式显示私钥。如果导入正确,它应该显示在“我的证书”下。

相关内容