2014-01-09 164 views
0

我已閱讀了很多關於推送通知的答案和教程,併發布了關於推送通知的信息,我管理了註冊,創建了證書p12和pem文件以及蘋果配置,所以我的應用程序知道如何接收推送通知(或至少它看起來像它)Python服務器端iphone推送通知

現在我試圖設置我的服務器端 - python/django。 我已經將密鑰& cert pem文件上傳到我的服務器文件夾,在this之後回答SO。我在嘗試ssl_sock.connect(theHost)時遇到錯誤,因爲pem有一個釋義,我讀過很多人說只是刪除釋義,但是然後是不是整個安全公共/私人密鑰不在窗口中?如果使用這種方法,我是否需要從蘋果的pem文件中刪除釋義?或者我已經下載到我的Mac?

回答

0

我用PHP來實現這一點,但我可以告訴你我所知道的:

  • 密碼短語僅僅是一個額外的加密層單獨
  • SSL加密確實是安全的。
  • 如果您想刪除密碼短語,請在提示輸入密碼時留空。
+0

您可否詳細說明第一點?所有密碼短語都是加密私鑰。密碼對SSL加密沒有任何作用,您的答案似乎暗示了這一點。 – EWit

+0

'密碼對SSL加密沒有任何幫助,這就是爲什麼我說「單獨使用SSL加密**真的很安全」,也許我沒有選擇正確的單詞。 – meda

2

爲了擴大在梅達的答案 - 想想這個:

  1. 如果你把證書的密碼,則需要進行硬編碼密碼短語某處Django項目,因爲它會需要該密碼才能加載證書。

  2. 如果有人妥協你的服務器,他們有你的證書。 「沒問題!」,你想。你有一個密碼短語,所以他們無法做任何事情!

  3. 除他們也有權訪問您的源代碼。

  4. 所以現在他們有你的口令和證書。

  5. 所以你真正做的是爲自己增加麻煩,沒有任何好處。

上的證書密碼短語意義,如果該證書被存儲的其他共享資產中,無論出於何種原因,或高加密的擔憂,其中私鑰只能手動使用,由個人或團體。

在所有其他情況下,這是完全浪費精力。

+0

所以我必須只在服務器端刪除釋義?或者將新的pem文件加載到蘋果開發者網站? –

+0

密碼短語僅用於加密您的私鑰。您可以使用實用工具,例如openssl,去掉密碼並給你解密的密鑰。你不必上傳一個新的密鑰給蘋果。 – EWit

+0

++ Jack在這裏有一個有效的點,當有人在沒有密碼的情況下得到'pem'時,密碼便於使用。在你的情況下,這兩個將在服務器上。如果你想刪除它,你將不得不重新生成'pem'文件。 @liva – meda