github地址
一、以下是生成JAVA的推送证书.p12的导出过程:
生成p12需要3个文件:
1,本机在https://developer.apple.com/ios/manage/certificates/team/index.action生成certifacates时上传的本机证书:CertificateSigningRequest.certSigningRequest
2,从https://developer.apple.com/ios/manage/overview/index.action的app IDs里拿到的Push SSL Certificate,命名为:aps.cer
3,在本机双击aps.cer会自动加载到本机的Keychain中,在keychain中找到该证书,展开,导出其下的private key为:key.p12
将以上3个文件放在同一个文件夹中,并用terminal打开,一次输入下面命令:
1,openssl x509 -in aps.cer -inform DER -out aps.pem -outform PEM
2,openssl pkcs12 -nocerts -out key.pem -in key.p12
3,openssl pkcs12 -export -in aps.pem -inkey key.pem -certfile CertificateSigningRequest.certSigningRequest -name “push” -out push.p12
即可生成需要的p12
二、以下是PHP测试.pem的导出过程:
说明:cer.p12为推送证书导出。key.p12为推送证书专用秘钥导出。
openssl pkcs12 -clcerts -nokeys -out apns-dev-cert.pem -in cer.p12
openssl pkcs12 -nocerts -out apns-dev-key.pem -in key.p12
openssl rsa -in apns-dev-key.pem -out apns-dev-key-noenc.pem
cat apns-dev-cert.pem apns-dev-key-noenc.pem > apns-dev.pem