2010-07-26 50 views
3

我們有以下幾點:加密從iPhone到Web應用程序的請求?

  1. iPhone本機應用程序,使用登錄表單員額:

  2. 遠程Web服務器上的PHP腳本,它會針對MySQL的用戶表。

爲了安全起見,最好的做法是使用某種雙向加密來加密每個請求?包括這個初始登錄?否則用戶和通行證將簡單地傳遞到Web應用程序的清晰?

我想HTTPS會自動照顧它......

+0

如果使用https,即https://oursite.com/login.php進行初始登錄,我可以生成一個唯一的身份驗證密鑰字符串,iPhone應用程序可以使用它來處理所有後續請求。除非用戶註銷iPhone應用程序,否則該密鑰不會過期,因爲我們不希望它們必須一直重新登錄。 – matt 2010-07-26 02:35:28

+0

是的。這就像窮人的HTTPS一樣 - 你從運輸工具的堆疊中取出加密和/或簽名的負擔。可能更便宜地擴展您的服務,更容易出錯。如果您只是想要這樣做,那麼通常會使用簽名cookie來完成網站中的「記住我」功能。 – 2010-07-26 06:08:43

回答

1

使用https可能是要走的路。這是它的設計目的。

2

這將是非常明智的使用SSL或TLS(即HTTPS使用協議)與服務器進行通信。使用OpenSSL,您可能很容易在* nix或Windows服務器上進行設置。如果您使用的是共享主機,他們可能會選擇購買在給定時間段內有效的SSL證書。這是一個相當平凡的過程,通常需要大約一週(平均)才能建立大多數主機。

還應該注意的是,儘管對登錄過程進行加密絕不是一個壞主意,但如果您從網絡上進行登錄並不安全,它將不會使「系統全部」更加安全。例如,如果您保護與移動設備的通信,但不與臺式機或筆記本電腦保持通信,則您的安全性可能已接近。您的應用程序的安全性與其最薄弱的環節一樣強大,因此保護您的整個應用程序(適用於所有平臺)非常重要。

另外,請記住,用戶的登錄憑證只與其保護的數據或資源一樣有價值:如果您對登錄信息進行了加密,那麼也應該對其餘應用程序進行加密。無線嗅探技術很容易竊取會話數據,私人用戶信息或其他敏感數據。確保整個用戶會話 - 而不是僅僅登錄過程 - 在你的用戶的最佳利益。

希望這有助於!