无法将apple developer_identity.cer转换为.p12格式.没有证书与私钥匹配

hen*_*rix 6 apache-flex adobe pkcs#12 flash-builder ios

我有以下问题:

我有这些文件

developer_identity.cer

Team_Provisioning_Profile_.mobileprovision

为了打包iOS的adobe flex移动应用程序,我需要将我的.cer证书转换为.p12格式.在关于help.adobe.com的本教程之后,我总是在执行last openll命令时遇到此问题:

"没有证书匹配
pkcs12 中的私钥错误"

根据我的理解,我需要以某种方式获得私钥,用于创建证书(我明白这一点吗?).如果我只有上面提到的.cer和.mobileprovision文件,我如何获得私钥mykey.key?

Nic*_*ood 6

.cer不包含您的私钥,您无法从中生成.p12文件.您必须从钥匙串同时导出它们.如果您只有.cer文件,那么它是无用的,您将不得不创建一个新的私钥和证书对.


小智 5

如果丢失私钥,不确定是否可以获得私钥.

当您请求证书时创建密钥,以便您可以请求新证书并且应该为您提供私钥.

  • 您可以从设备配置门户执行此操作.只需拒绝您的旧证书,然后再完成您最初创建它的过程.他们绝对不会向你收费. (2认同)

小智 5

当证书是 DER 编码的时,OpenSSL 表示没有证书与私钥匹配。只需在创建 PKCS#12 之前将其更改为 PEM 编码即可。

  1. 创建密钥对openssl genrsa -out aps_development.key 2048

  2. 创建企业社会责任openssl req -new -sha256 -key aps_development.key -out aps_development.csr

  3. 将 CSR 上传到开发者门户以获取证书 aps_development.cer

  4. 转换证书openssl x509 -inform DER -outform PEM -in aps_development.cer -out aps_development.pem

  5. 构建 PKCS#12openssl pkcs12 -inkey aps_development.key -in aps_development.pem -export -out aps_development.p12