安全密碼存儲
回答
最簡單的方法來獲得您的密碼存儲方案是安全的使用標準庫。
由於安全性往往比許多程序員可以獨自解決的問題複雜得多,並且存在更多無形的可能性,所以使用標準庫幾乎總是最簡單和最安全(如果不是唯一的話)可用選項。
更多信息,請參見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. 安全地存儲Redis密碼
- 2. 安全登錄+醃製密碼存儲
- 3. 安全的網站密碼存儲
- 4. Phonegap/Cordova:安全地存儲密碼?
- 5. 安全密碼存儲和恢復
- 6. Gtk#:安全存儲用戶密碼
- 7. 安全地傳輸和存儲密碼
- 8. 安全地存儲密碼哈希django
- 9. Eclipse安全密碼存儲和ssh-agent
- 10. 安全的密碼生成和存儲
- 11. 安全存儲AES密鑰
- 12. 密碼存儲和安全密碼傳輸
- 13. 存儲密鑰和密碼的安全方法,用於asp.net
- 14. 如何存儲密碼以解密安全數據?
- 15. 春季安全與休眠,存儲加密密碼
- 16. 如何安全地存儲加密密碼
- 17. 代碼中的密碼存儲。如何使其安全?
- 18. 在緩存中安全地存儲密碼哈希
- 19. 密碼安全
- 20. 如何安全地存儲密鑰?
- 21. Android的安全存儲密鑰
- 22. 沿着加密的AES密鑰存儲密碼哈希的安全隱患
- 23. 通過POST API請求更安全地存儲Python存儲密碼
- 24. github或bitbucket上的私有存儲庫安全地存儲密碼?
- 25. PDO密碼安全
- 26. 什麼是存儲Paypal專用密碼的安全方式? (PHP)
- 27. 安全地存儲外部數據庫的密碼
- 28. 如何安全地將用戶密碼存儲在Cloudant DB中?
- 29. Laravel存儲安全密碼並進行身份驗證
- 30. 如何安全地存儲遠程服務的密碼?
也是如此SHA1 http://www.phocean.net/2009/05/10/sha-1-vulnerable-consider-sha-2。html – 2010-12-02 12:18:55