【发布时间】:2013-09-17 10:01:39
【问题描述】:
在crackstation.net 上使用php source code 进行散列+加盐,返回的散列包括使用的散列算法。我将 create_hash 函数返回的哈希值存储在我的数据库中。存储这些信息是不好的做法吗?这会给黑客带来优势吗?
【问题讨论】:
-
鉴于 php 散列函数支持多个散列,您必须包含用于稍后能够再次验证散列值的散列。哈希类型通常很容易通过它们的字符串长度来识别(例如 md5 是 32 个字符,sha1 是 40,等等)。
-
如果您使用的是良好的哈希,则不应该。 (假设存在单向函数。)单向函数的定义包括如下语句:给定原始函数和输出,很难检索输入。但请确保您使用的哈希没有被破坏! Marc B 提出了一个很好的观点——无论如何你都需要知道。有些人会争辩说,使用哈希的全部意义在于您可以不加选择地共享算法。
标签: php mysql hash passwords salt