返回首页

您好,
我做节目,可以过滤掉在相册中的副本,我想知道是否有可能来计算,将计算两个不同的文件相同的哈希的机会。
我也想知道哈希方法fastes相比,哈希将如何潮头。

比方说,我有10000的图片。所有的图片,或约800万像素的质量,使他们在大小相似。我每一个互相检查MD5哈希法。是否有任何"真正"的机会,我会得到一个假阳性?文件名是否发挥任何部分的哈希?

谢谢

回答

评论会员:游客 时间:2012/02/07
OriginalGriff:"有没有"真正"的机会,我会得到一个假阳性"非常,非常不可能的。蛮力赔率是12^128,但实际赔率低于。没有这么多,它使一个显着性差异(地狱,它可能是由50个数量级,你会赢得了一年的彩票每星期仍然有一个更好的机会。它不是,虽然)。BR}"文件名是否发挥任何部分的哈希?"不正常,没有。这是该文件的内容的事项,MD5算法,不知道它的数据是什么-它仅仅是一个字节流,尽可能关注"我也想知道哈希方法fastes相比,哈希将如何潮头。"算法比对算法​​本身的实现取决于很多
。sigsand
评论会员:游客 时间:2012/02/07
我发现我自己的问题的答案。我只是做了一个测试程序,以检查不同的方法,令人惊讶的是,自己的实施工作。我用了一个秒表的时间采取三种方法。一个是要被分成两个独立的字符串比较文件的MD5(在一个单独的测试SHA1)哈希,只需使用(string1.Equals(字符串))检查匹配。一个更快的方法是将其转换成一个单独的字节数组,然后遍历数组和比较匹配的字节数组,如果这两个文件。由于时代的大多数文件将是不一样的,这大大提高速度。我有32张图片的文件夹,其中两个是复制粘贴。共84MB。测试结果:按回车键开始......MD5哈希检查NR文件检查:32星期日的比赛:2毫秒:6243(6秒)SHA1哈希检查NR文件检查:32星期日的比赛:2毫秒:7702(7秒)字节数组的哈希检查NR文件检查:32星期日的比赛:2毫:1241秒(秒:1)按回车键退出...感谢大家的输入。如果有人想algortihms,我可以将它张贴在这里。这不完全是一个问题的答案我有,但可能会发现这个有趣的人有我有同样的问题。我将迎来第一个答案,因为它直接回答我的问题的解决方案