根据http://php.net/manual/en/function.hash.php,有一个php哈希方法:hash()。它支持以下所有方法,但我想知道,密码散列的绝对最安全的方法是什么。
Results: (in microseconds)
1. md4 5307.912
2. md5 6890.058
3. crc32b 7298.946
4. crc32 7561.922
5. sha1 8886.098
6. tiger128,3 11054.992
7. haval192,3 11132.955
8. haval224,3 11160.135
9. tiger160,3 11162.996
10. haval160,3 11242.151
11. haval256,3 11327.981
12. tiger192,3 11630.058
13. haval128,3 11880.874
14. tiger192,4 14776.945
15. tiger128,4 14871.12
16. tiger160,4 14946.937
17. haval160,4 15661.954
18. haval192,4 15717.029
19. haval256,4 15759.944
20. adler32 15796.184
21. haval128,4 15887.022
22. haval224,4 16047.954
23. ripemd256 16245.126
24. haval160,5 17818.927
25. haval128,5 17887.115
26. haval224,5 18085.002
27. haval192,5 18135.07
28. haval256,5 18678.903
29. sha256 19020.08
30. ripemd128 20671.844
31. ripemd160 21853.923
32. ripemd320 22425.889
33. sha384 45102.119
34. sha512 45655.965
35. gost 57237.148
36. whirlpool 64682.96
37. snefru 80352.783
38. md2 705397.844
答案 0 :(得分:6)
你应该use bcrypt。
答案 1 :(得分:0)
密码哈希的绝对最安全的方法是什么
在问题的前提下回答:绝对最安全的可能是:
在此之前,最安全的可能是:
然而,实际上密码散列不是主要问题,只需散列任何一个“好”解决方案就足够了。好的解决方案是:
对于上述两种情况,你不应该推出自己的作品。您应该始终使用专为长期密码存储而设计的成熟,经过良好测试和审查的库。密码散列不仅仅是关于使用BCrypt或PBKDF2,你想要一个具有合理默认值的合成,用于字符编码,盐,迭代计数/成本因素等。