【问题标题】:iPhone: how/whether to include my existing private key in a new certificate?iPhone:如何/是否将我现有的私钥包含在新证书中?
【发布时间】:2011-03-17 11:04:53
【问题描述】:

短版:

我是否有必要甚至可以根据我现有的私钥生成一个新的分发证书,或者对于新应用程序和应用商店中现有应用程序的更新,生成一个新证书是否没有害处新的私钥?

加长版:

在我看来,iPhone 开发者计划用户指南中关于私钥和分发证书到期的信息存在冲突/误导性信息。

一方面,它说你应该用你的生命来保护你的私钥,并保留它的副本,以便在你更换开发机器时可以在新机器上使用它。我的理解是,您必须以某种方式保留一个真正的私钥(即,在请求您的第一个证书时为您的公司生成的第一个私钥),并永远使用它(至少,一旦您部署了一个应用程序,就永远使用它到 App Store)。

另一方面,它告诉您分发证书在一年后到期,您可以在需要时简单地申请新的分发证书。对我来说有意义的是,如果他们遵循以“因为在请求新证书时使用原始私钥对您来说至关重要,以下是您如何请求从预先创建的证书现有的私钥......”但是没有这样的段落,经过搜索我还没有听说过这样做的方法。

stackoverflow 上有一个密切相关的帖子:Lost Private Key For iPhone Distribution Certificate. What could be solutions?

该问题的答案似乎表明,当分发证书丢失或过期时,您可以将其撤消并创建一个新的,并且不会影响您当前在应用商店中的应用,并且您可以继续发布使用新证书的新应用,Apple 不会说“嘿,你和以前不是同一家公司。”

该帖子未回答的一个关键问题是,是否可以使用不同于之前发布应用程序的证书/密钥来更新应用程序商店中的现有应用程序。但我在其他地方听说这也是可能的。

因此,归结为:Apple 将您的私钥听起来像是真正将应用程序识别为来自您公司的东西是否具有误导性?真的只是您的应用程序 ID 加上您用于登录开发门户和 itunesconnect 的凭据来识别您的公司和您的应用程序吗?

【问题讨论】:

    标签: iphone certificate private-key


    【解决方案1】:

    您可以生成一个新的私钥,并在不中断您的应用程序的情况下使用它。我从第一手经验中知道这一点 - 因为我丢失了我的密钥并且不得不使其无效,并重新生成一个新的 - 之后我需要对我现有的两个应用程序的更新签名(使用旧密钥签名) - 和将更新提交到 AppStore。

    密钥被撤销后现有应用程序或人们更新它们后的新更新都没有中断。在应用程序更新期间,应用程序中的用户数据也没有丢失。简而言之,一切都完全无缝。

    有一个话题正在讨论推送通知是否会继续正常工作(如果您的应用使用它们)。不过,我不能这么说。

    【讨论】:

    • 谢谢。我想这意味着关于私钥如此关键的东西只是误导。也许过去更关键,他们改变了工作方式,但没有修复文档。
    猜你喜欢
    • 2017-05-18
    • 1970-01-01
    • 1970-01-01
    • 2012-04-22
    • 1970-01-01
    • 1970-01-01
    • 2021-11-06
    • 1970-01-01
    相关资源
    最近更新 更多