什么是PHP中md5加密的当前功能替代?

时间:2012-03-16 11:43:50

标签: php cryptography md5

我听说md5已经过时且过时了。我的替代选择是什么?

非常感谢。

2 个答案:

答案 0 :(得分:1)

Google pbkdf2。 PHP中有一些实现,它是一个完整的密码保护的一站式商店。如果您只是对密码进行哈希处理,然后使用它,那么md5比sha1稍微差一点,这比sha256稍差一些,但是它们都很容易受到彩虹表的影响。确保你至少使用适当的腌制技术,并且要真正做到正确,你应该使用像pbkdf2这样的算法,其目的是使计算密集到暴力(在那里也有一点点默默无闻,因为它要求攻击者知道你正在使用的迭代次数,而不仅仅是算法。

答案 1 :(得分:1)

我建议你使用SHA-2系列。 SHA-2系列哈希函数是SHA-1的当前替代品。 SHA-2的成员分别称为SHA-224,SHA-256,SHA-384和SHA-512。

对于哈希,你基本上只想选择可能的最大块大小,并使用salt值来避免彩虹攻击。

如果你需要在一个应用程序中替换MD5,其中首先使用哈希是一个糟糕的设计选择,其中包括许多与密码一起使用(保护登录信息或从密码生成密钥),那么你不想只是替换MD5;你想改变设计。