2015-10-25 128 views
-2

我有一個表單,我有一個密碼字段。當用戶提交表單時,包括密碼在內的所有字段在通過URL到達另一個php頁面時都會在url中清晰可見。有什麼辦法可以避免這種情況?我不想讓密碼可見。在通過GET發送url之前在PHP中加密密碼

+10

你不想用GET來做,你想要POST和SSL。 – DeDee

+0

@Deva,上面的評論是必須的 –

+0

**你真的*不*想要加密密碼**你需要**散列**,所以如果數據庫被黑客攻擊的話密碼不能被檢索。另一方面,傳輸應該使用SSL&POST。 – cybermonkey

回答

6

你應該POST荷蘭國際集團的表格數據,而不是使用GET方法刪除從查詢字符串中的數據:使用SSL

<form method="post" ... 

和加密數據 - 這樣所有的數據將被髮送牢固。

This answer雄辯地解釋了POSTGET之間的差異。

+1

也應該提到密碼應存儲在數據庫中時應該散列,而不是加密。 – cybermonkey

+1

@bob是,否;在這種情況下,我們正在討論將數據發送到服務器而不是存儲任何東西,因此加密就足夠了。不過,我同意OP在存儲密碼時需要注意[hash](http://security.stackexchange.com/questions/51959/why-are-salted-hashes-more-secure)。 –

+0

@bob有點在這個問題的主題,但很好的提及。你一定要加密密碼從客戶端到服務器(SSL),然後散列它,如果你要堅持它。 – JimL