【问题标题】:Error: Manifest file not verfied successfully错误:清单文件未成功验证
【发布时间】:2012-12-26 06:14:55
【问题描述】:

我正在使用 .NET 代码来设置 ASP.NET 模块,以便为 iPhone 应用程序创建通行证。 我能够成功生成通行证,但是当我点击添加按钮时,通行证不会被添加到存折应用程序中,实际上它只是消失了。

我登录设备控制台发现错误“无效数据错误读卡/。清单签名未成功验证”

我已准备好所有证书(正确导入了私钥。)

希望有任何帮助...!!!

【问题讨论】:

  • 当 Passbook 失效时会发生这种情况。
  • 使用这个github.com/Redth/PassKitSharp repo 创建sharp/.Net pkpass
  • 我为此尝试使用 .Net 4.0,我能够生成通行证,但将其添加到 Passbook 是唯一的问题.. 签名哪里出错了?我的证书存储在 Windows 证书存储中
  • private byte[] signit(string manifest) { byte[] manifestbytes = ASCIIEncoding.ASCII.GetBytes(manifest); ContentInfo contentinfo = new ContentInfo(manifestbytes); SignedCms signedcms = new SignedCms(contentinfo, true); X509Certificate2 objCertificate = getServerCert("pass.test.bms"); CmsSigner oursigner = new CmsSigner(objCertificate); signedcms.ComputeSignature(oursigner);返回有符号的cms.Encode(); //返回清单字节; } 这是我使用的代码
  • @Sumanth 这不是真的 - 存折不会“无效”通行证。 用户选择将通行证添加到 Passbook 之后,将检查通行证签名。如果由于证书无效、签名与清单不匹配或签名不包含 WWDR 证书而导致签名验证失败,则不会将通行证添加到 Passbook(并且简单地消失)。

标签: iphone asp.net ios passbook


【解决方案1】:

尝试使用开发者网站中的 Apple 存折资料。使用 signpass 对代码进行签名 我认为这将解决问题

【讨论】:

    【解决方案2】:

    此错误的一个潜在原因是签名中未包含 Apple WWDR 证书。直到 iOS6 Beta 3 才引入将其包含在签名中的要求(直到 Beta 4 才强制执行)。文档here

    您使用的 .NET 库已使用超过 3 个月,因此它可能未在签名中包含此证书。

    您可以从 Apple here 下载 WWDR 证书。

    如果您可以发布指向未加载的 .pkpass 包的链接,这也可能会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-07-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-12
      • 2019-11-16
      • 2014-02-25
      相关资源
      最近更新 更多