安全密碼存儲
回答
最簡單的方法來獲得您的密碼存儲方案是安全的使用標準庫。
由於安全性往往比許多程序員可以獨自解決的問題複雜得多,並且存在更多無形的可能性,所以使用標準庫幾乎總是最簡單和最安全(如果不是唯一的話)可用選項。
更多信息,請參見this answer
你可能想散列密碼 - 不加密它。 Check out SHA-1。散列意味着您無法像使用加密一樣檢索原始數據。相反,你所做的是對用戶輸入進行散列,並將其與數據庫中的散列進行比較,以查看他們是否擁有正確的密碼。這樣做會增加安全性,就好像數據庫已經被破壞一樣 - 一堆哈希值是無用的。
您需要使用適當的安全算法來加密和散列密碼。
- PHP的mhash具有適當的散列函數
- A full example這裏SO
我認爲你的意思是mhash庫。 – rook 2010-12-02 17:11:22
@對,對不起。深夜:) – 2010-12-02 20:34:04
有哈希密碼(最好用食鹽)的可能性:
$salt = random_string($length = 5);
$hash = $salt . sha1($salt . $password);
或存儲加密的(只有當你的MySQL連接是SSL加密):
INSERT INTO `user` (`user`,`pass`) VALUES("username",ENCRYPT("password","secretkey"))
好了,你不應該用MD5加密它們(這不是真正的安全,大多數黑客都有轉換表)。
因此,您可以使用SHA1(通常使用)對其進行哈希處理。
如果您想了解更多的安全性,你可以添加更多的salt
這是一個關鍵您可以添加像這樣(只是舉個例子,通常使用):
salt+sha1(salt+pass)
這種組合可以與許多語言使用。
在SHA-1(sha1 php內置函數)中進行散列密碼與幾次鹽析遞歸(上述答案中的代碼相同,只循環幾次)。這應該是足夠的保護,所以即使入侵者以某種方式得到他們的手上的哈希,他們不應該能夠破解他們...
- 1. Gtk#:安全存儲用戶密碼
- 2. Eclipse安全密碼存儲和ssh-agent
- 3. 安全密碼存儲和恢復
- 4. 如何安全地存儲加密密碼
- 5. 存儲密鑰和密碼的安全方法,用於asp.net
- 6. 如何存儲密碼以解密安全數據?
- 7. 春季安全與休眠,存儲加密密碼
- 8. 如何安全地存儲密鑰?
- 9. Android的安全存儲密鑰
- 10. 沿着加密的AES密鑰存儲密碼哈希的安全隱患
- 11. 通過POST API請求更安全地存儲Python存儲密碼
- 12. 我能做些什麼來快速安全地存儲密碼?
- 13. Laravel存儲安全密碼並進行身份驗證
- 14. 如何安全地存儲註冊/登錄信息,如密碼?
- 15. 如何安全地存儲沒有哈希的密碼?
- 16. 什麼是存儲Paypal專用密碼的安全方式? (PHP)
- 17. 安全存儲密碼時仍需要訪問明文
- 18. 如何使用greasemonkey安全地存儲密碼?
- 19. 這是一個安全的方式來存儲我的密碼?
- 20. 使用Passport和MySQL存儲密碼的安全
- 21. 本地安全地存儲用於Web服務的密碼
- 22. 最安全的地方存儲密碼的散列
- 23. 將ASP.NET會員系統轉換爲安全密碼存儲
- 24. PHP - 在cookie中存儲密碼是否安全?
- 25. 在rake任務中存儲密碼安全嗎?
- 26. 如何安全地存儲遠程服務的密碼?
- 27. 安全地在服務器上存儲密碼
- 28. 這個cookie系統對於存儲密碼是否安全?
- 29. 使用Powershell與CruiseControl.Net進行安全密碼存儲?
- 30. 如何在設備上安全地存儲密碼?
也是如此SHA1 http://www.phocean.net/2009/05/10/sha-1-vulnerable-consider-sha-2。html – 2010-12-02 12:18:55