这是理论上的问题,但我很好奇。如果我这样做(PHP 中的代码,但在这种情况下语言并不重要)怎么办:
$value = ''; //starting value
$repeat = false;
while(true)
{
$value = md5($value);
/*Save values in database, one row per value*/
/*Check for repeated hash value in db, and set $repeat flag true if there is one*/
if($repeat)break;
}
如您所见,我怀疑会有重复的哈希值。我认为每个现有文本都没有自己的价值,因为这应该意味着每个哈希值都有自己的价值,这没有意义。
我的问题是:那里有关于这个“问题”的文章吗?例如,当我对文件进行哈希处理以检查它们是否有效时,我可能会在一个系统中获得相同的值?这会在任何系统的任何地方引起问题吗?