已颁发的 PKPass 文件的签名证书到期的后果

Posted

技术标签:

【中文标题】已颁发的 PKPass 文件的签名证书到期的后果【英文标题】:Consequences of the expiration of the signing certificate for a already issued PKPass file 【发布时间】:2021-04-07 15:35:45 【问题描述】:

我目前正在探索使用 PKPass 文件在中/长期(几个月到几年)内向用户分发一些数据的可能性。

发现的一个潜在问题是Apple颁发的签名证书有效期为1年,出于技术原因,我宁愿避免在可能的情况下为每个新的签名证书update the issued passes。

我不清楚生成的 PKPass 文件在实践中意味着什么。从this answer of another post 开始,我预计 PKPass 在签名证书到期时会自行失效,并以某种方式被 Wallet 应用程序拒绝。但是在对生成的 PKPass 文件进行一些实验并将 iPhone 的系统日期设置为明显超出签名证书有效性的某个点之后,iPhone 似乎毫无问题地接受了 PKPass(重置系统日期后加载 PKPass 时的结果相同) ,或之前)。这出乎我的意料,我怀疑我错过了什么。

简而言之,问题是:签名证书过期对已发布的 PKPass 文件有什么影响?这些生成的文件是否仍可以加载并更新到钱包中(如果可以,持续多长时间),还是在签名证书到期时立即失效?

PS:这个问题主要针对 iPhone 上的官方 Wallet 应用,但我也对 android 对应的任何答案感兴趣。

【问题讨论】:

【参考方案1】:

签名日期嵌入在通行证签名中。提取通行证时,会根据证书日期检查签名日期,以确定证书在编译通行证时是否有效。

如果您未能更新您的证书,则颁发的通行证将无限期保持有效,但您将无法以任何方式修改或更新它们。

【讨论】:

以上是关于已颁发的 PKPass 文件的签名证书到期的后果的主要内容,如果未能解决你的问题,请参考以下文章

各个品牌的代码签名中都有时间戳,是干啥用的?

将 GoDaddy 颁发的 .spc 和 .key 文件加入完整的 .pfx / .cer 证书

签名验证前发件人证书已过期

自签名证书颁发及验证

证书过期的试飞

使用自签SSL证书会有啥后果