0

我目前正在構建一個web /桌面應用程序。用戶可以在線創建帳戶並通過在線或通過桌面客戶端登錄。 客戶端將在Python中構建並導出到exe。Python和PHP的密碼保護

由於網站沒有https連接,我想在密碼在線發送之前先對密碼進行加密。

什麼是最好的方法來做到這一點,所以哈希密碼將是相同的Python和PHP?或者,他們是更好的方式,還是應該投資https?

我一直在使用簡單的散列但是PHP md5("Hello")將返回到Python的hashlib.md5("Hello").hexdigest()

回答

9

忘掉這個想法不同的東西嘗試。在客戶端散列密碼,將散列發送到服務器,然後將其與存儲的散列進行比較相當於將簡單密碼存儲在數據庫中,因爲散列成爲密碼

或者我應該只投資於https?

是的!

0

你能分享一個代碼示例來重現這一點,以及兩個不同的輸出?

他們應該並且確實創建相同的輸出。

你也應該要麼使用HTTPS或查找使用質詢響應機制(這裏是一個例子,許多郵件服務器使用:http://en.wikipedia.org/wiki/CRAM-MD5

加密的密碼已沒有安全效果 - 任何人都可以截取密碼,再利用它。密碼仍然保密,但任何人仍然可以登錄,就好像他們知道密碼一樣。