2012-10-18 147 views
5

我正在創建一個需要允許用戶登錄到我們的中央身份驗證服務的Phonegap應用程序。在Phonegap內安全登錄

我的問題是,由於電話上的文件正在本地加載(通過file://),因此HTTPS連接上沒有安全性。如果我將用戶名和密碼傳遞給我們服務器上的HTTPS位置,則即使響應會發生,請求也不會受到保護。

我不想爲登錄使用ChildBrowser插件,因爲似乎沒有任何類型的事件冒泡,它會告訴我登錄過程何時完成,並且並非所有平臺都支持ChildBrowser插件。

它看起來好像使用非對稱加密用公鑰加密用戶名/密碼組合並用私鑰在服務器上解密它可能是合理的。不過,我似乎無法讓任何JavaScript RSA庫在後端使用Java進行良好的播放。

非對稱加密在Phonegap應用程序中保護用戶密碼的情況下看起來不錯嗎?有更好的解決方案嗎?

怎麼會得到這個工作與Javascript-> Java?我一直在客戶端使用ohdave.com/RSA腳本,但Java不想使用ohdave生成的密鑰重新創建密鑰。

任何幫助表示讚賞。

回答

4

我已經瞭解到,通過HTTPS請求認證Web服務將啓動一次握手,允許使用SSL證書對憑證進行加密。

至於存儲在手機上的證書,這裏就是我正在做它:

  1. 發送憑據登錄Web服務通過SSL使用Base64編碼技術在基本授權頭。
  2. 成功的登錄響應包括使用服務器上的密鑰加密的憑證AES。
  3. AES加密的憑證存儲在手機上。
  4. 未來登錄是通過在摘要授權標頭中通過SSL向登錄web服務發送加密憑證來處理的。