迭代少的复杂的哈希算法 vs 多次迭代的简单的哈希算法
迭代少的复杂的哈希算法 vs 多次迭代的简单的哈希算法,能不能对比二者的优劣~~分别有什么优势和劣势。
比如在对密码进行加密的时候,用哪种更靠谱呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
迭代少的复杂的哈希算法 vs 多次迭代的简单的哈希算法,能不能对比二者的优劣~~分别有什么优势和劣势。
比如在对密码进行加密的时候,用哪种更靠谱呢?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(1)
经典的硬件计算能力和算法的赛跑。因为多核、GPU辅助运算早就普及(1万块组个4核+GPU,轻松就能每秒尝试超过千万个排序组合),MD5和SHA1已经被证明强度不够了,就算每个用户有不同的Salt改观也不大,毕竟大部分场景下,Salt会和用户的password存在相同位置。
scrypt的内存和CPU占用都很高,理论上是最好的选项,但还没有大规模地被IT工程师们实现。
最现实的是blowfish,足够慢,大概比SHA1慢1万倍。PHP很早就有个phpass库,Wordpress等等就用的它,Python和Ruby都有移植。
最次就是结合足够长,足够随机的Salt,多多迭代SHA2。
另外,今年晚些时候,SHA3应该可以有优胜者了:http://csrc.nist.gov/groups/ST/hash/s...。
我觉得密码安全更多的是社会工程学问题: