關於用Openssl產生pem檔案用於Go語言實現ios推送

來源:互聯網
上載者:User
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。

今天在完成ios推送過程中遇到一些問題,同事幫我註冊了一個蘋果的認證,然後用認證產生相應的pem檔案,網上關於產生pem檔案有很多方式

(1)php

  1. deviceToken: <6974ac11 870e09fa 00e2238e 8cfafc7d 2052e342 182f5b57 fabca445 42b72e1b>
      2. 產生app在服務端需要的許可*****br> 1)進入Provisioning Portal, 下載Certificates在development下的認證。 
      3.找到需要測試的app id,然後enable它在development下的Apple Push Notification service: Development Push SSL Certificate。需要輸入1)中的簽署憑證才可以產生一個aps_developer_identity.cer.
      4.雙擊aps_developer_identity.cer,會開啟系統的key chain. 在My certificates下找到Apple Development Push Services。需要為certificate和它之下的private key各自export出一個.p12檔案。(會出現設定密碼過程)
      5.需要將上面的2個.p12檔案轉成.pem格式:
複製代碼
openssl pkcs12 -clcerts -nokeys -out cert.pem -in cert.p12

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


      6.如果需要對key不進行加密:
  
複製代碼
openssl rsa -in key.pem -out key.unencrypted.pem

      7.然後就可以合并兩個.pem檔案, 這個ck.pem就是服務端需要的認證了。
  
    複製代碼
cat cert.pem key.unencrypted.pem > ck.pem


(2)go

在php用openssl產生cert.pem和key.pem過程中,分別用cert.p12和key.p12檔案,同事給我的只有aps_development.cer和push_dev.p12

下面用aps_development.cer產生cert.pem檔案

命令:

 openssl x509 -in aps_development.cer -inform der -out cert.pem  -passin pass:P12_PASS (P12_PASS為產生p12檔案時的密碼)產生加密的key.pem檔案openssl pkcs12 -nocerts -out key.pem -inpush_dev.p12  -passin pass:P12_PASS -passout pass:TMP_PASS(TMP_PASS為自己設定的臨時密碼用於產生不加密的key.pem檔案)
產生不加密的key.pem檔案openssl rsa -in key.pem -out unencryptkey.pem -passin pass:TMP_PASS(為剛才設定的臨時密碼,必須大於等於4個字元)
到這裡所需的cert.pem檔案和unencryptkey.pem 檔案就產生了。go語言提供的tls庫中的LoadX509KeyPair並沒有傳入密碼的選項,所以要產生unencryptkey.pem 的檔案,自己可以下載windows下openssl工具,然後用認證自己產生。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.