2012-07-18 72 views
9

我有一個IPhone應用程序,我在其中實施推送通知。爲此,我創建了一個csrfile,p12文件和生產cer.Enabled推送通知爲應用程序id.And配置文件下載。並且當我在設備上運行我但是當我將來自證書和pem文件的pem文件從p12密鑰中合併,並生成另一個pem文件並放入我的服務器時,推送通知不會進入我的電話。我已經使用此命令在終端創建文件。'用於推送通知的Creating.pem文件?

openssl x509 -in aps_production.cer -inform der -out phoneapp.pem 

openssl pkcs12 -nocerts -out phoneappKey.pem -in veapp.p12 

cat phoneapp.pem phoneappKey.pem > applicationwebservice.pem 

`任何人都可以幫助我正確地獲得pem文件嗎?

+0

這裏:http://stackoverflow.com/a/1762824/624091,試試這個。 – George 2012-07-18 07:59:44

回答

34

得到P12文件後,它需要從終端執行該命令可以轉換爲PEM格式:

openssl pkcs12 -clcerts -nokeys -out apns-dev-cert.pem -in apns-dev-cert.p12 
openssl pkcs12 -nocerts -out apns-dev-key.pem -in apns-dev-key.p12 

如果你想要刪除密碼,要麼在導出/轉換或執行時不要設置一個:

openssl rsa -in apns-dev-key.pem -out apns-dev-key-noenc.pem 

Fin盟友,你需要的密鑰和證書文件合併成連接到APNS時,我們將使用APNS-dev.pem文件:

cat apns-dev-cert.pem apns-dev-key-noenc.pem > apns-dev.pem 

這是獲得PEM文件,以獲取更多詳細信息的方式是指my blog

+0

完美,也幫助了我。謝謝 – 2013-01-09 20:46:32

+2

我不得不使用''openssl pkcs12 -nocerts -in apple_push_dev.p12 -nodes -out y.pem''來讓它以未加密的形式推出密鑰(OpenSSL 1.0.1f) – NickZoic 2014-07-08 01:16:36

11

試着用下面這些命令:

openssl pkcs12 -clcerts -nokeys -out cert.pem -in cert.p12 

openssl pkcs12 -nocerts -out key.pem -in key.p12 

openssl rsa -in key.pem -out key.unencrypted.pem 

cat cert.pem key.unencrypted.pem > ck.pem 
+0

好的也可以運作 – 2013-10-15 07:59:33

0

要創建.pem文件,您需要遵循以下簡單步驟。

你在這裏。

步驟1:登錄您的開發者帳戶轉到Provisioning Portal,單擊「Certificates」。然後,點擊'+'按鈕。

步驟2:選擇分配部分下的Apple推送通知服務SSL(生產)選項,然後單擊「繼續」。

第3步:選擇要用於BYO應用程序的應用程序ID(如何創建應用程序ID),然後單擊「繼續」轉至下一步。

步驟4:按照「關於創建證書籤名請求(CSR)」步驟創建證書籤名請求。

步驟5:上傳步驟4中生成的「.CSR」文件,然後點擊「生成」。

第6步:單擊「完成」完成註冊,iOS Provisioning Portal頁面將更改UI。

第7步:現在轉到「鑰匙串」,找到剛纔安裝的證書。如果不確定哪個證書是正確的,那麼它應該以「Apple Production IOS Push Services:」開頭,然後是應用程序的捆綁ID。

第8步:展開證書,您應該看到帶有您的姓名或公司名稱的私鑰。使用鍵盤上的「選擇」鍵選擇兩個項目,右鍵單擊(或者如果您使用單個按鈕鼠標,則單擊鼠標右鍵),選擇「導出2項目」。 然後將名稱爲「yourselectedname.p12」的p12文件保存到桌面 - 現在系統會提示您輸入密碼以保護它,您可以單擊Enter跳過密碼或輸入您想要的密碼。

步驟9:現在打開你的Mac上的 「終端」,並運行以下命令:
CD
CD桌面
OpenSSL的PKCS12 -in pushcert.p12退房手續pushcert.pem -nodes -clcerts

** DONE您已成功創建了蘋果推送通知證書(.PEM文件)**