ios 代码签名混淆证书

ios certificate for code signing confusion

我正在阅读 this article,其中解释了代码登录 iOS/OSX。

我知道从 KeyChain Access utility 我可以看到我的证书,如果展开我的开发者证书,我可以看到有一个私钥:

文章说:

...you will find the certificates you have the private key for. To use a certificate for signing, you need the private key...

我明白了。

文章还说:

To export a certificate from your keychain with the private key,Command-Click the certificate and choose ‘Export...

这让我觉得私钥被注入到证书中。

但是文章接着说:

A certificate is — very broadly speaking — a public key combined with a lot of additional information that was itself signed by some authority

我很困惑,第一句话说证书包含私钥,但上面的引文说证书是 public 结合其他信息的密钥。那私钥在哪呢???

能不能这样理解:

证书实际上是 public 密钥,其中 holds/nested 带有私钥?所以,如果我导出证书,我实际上是以 X509 证书的形式导出 public 密钥和私钥以及其他信息?

如果您要导出证书,则不会包含私钥(除非您 select 也包含私钥)。 更多信息:https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/MaintainingCertificates/MaintainingCertificates.html

这篇文章是正确的。证书本身不包含私钥。但是,在文章中要求您 select 将证书 与私钥一起 并导出。这样做时,私钥包含在您正在创建的 .p12 文件中。