【发布时间】:2014-03-13 04:41:23
【问题描述】:
我在 App Store 中有一个付费应用,我正在下一个版本中实施收据验证。
在我的手机上,我从 App Store 下载了我的应用程序(没有收据验证),并且正在将下一个版本编译到我的 iPhone 上以测试我的收据验证实施。
由于某种原因,d2i_X509_bio() 在后面的 sn-p 中总是返回 NULL。
NSData * appleRootCert = [NSData dataWithContentsOfURL:[[NSBundle mainBundle] URLForResource:@"AppleIncRootCertificate" withExtension:@"cer"]];
BIO * b_appleRootCert = BIO_new_mem_buf((void *)[appleRootCert bytes], (int)[appleRootCert length]);
X509 * x509_appleRootCert = d2i_X509_bio(b_appleRootCert, NULL);
有人知道怎么回事吗?
【问题讨论】:
-
调用
d2i_X509_bio时,ERR_get_error返回的错误码是什么?收到错误代码后,请使用openssl errstr 0xNNNN将其转换为可读的内容。