我是否需要同时使用 MD5和SHA-1值,以确保下载的文件是
a)未被黑客触及。例如,当我需要通过种子下载一些应用的.iso
和
b)在技术问题期间未损坏?例如,下载过程中网络连接不稳定。
或者,SHA-1值可能足以进行两次检查?
此外,SHA-1(没有MD5)是否足以确保几年前下载并存储在我的HDD上的某些文件还没有degradated?
答案 0 :(得分:1)
从安全角度看,MD-5完全损坏。
SHA-1被认为是可疑的,如果可能的话,应避免在大多数情况下使用。对于新项目:根本不要使用它。
SHA-2(又名SHA-256,SHA-512等)仍然广泛用于快速散列。
SHA-3是自2012年以来的未来,没有什么可以阻止您使用它。我认为没有理由不将其用于新项目。
年龄较大的孩子有什么问题?
什么时候没问题:确保您的磁盘没有产生错误:并且可以进行哈希处理,所以即使是简单的CRC32也可以工作(我建议使用更简单的CRC检查)或RAID阵列,这些不仅可以检测到错误,还可以修复错误。
同时使用吗? 好吧,如果您必须在一个哈希上找到冲突,并且让同一组纯文本在另一个哈希上也产生冲突,则可能会更困难。过去曾经使用过这种方法,原始的PGP确实做了类似的事情。如果我没记错的话,它计算出了很多东西,其中之一就是长度(这可以防止上面的扩展攻击)。
是的,它可能会添加一些东西,但是md5和SHA-1和SHA-2在内部的工作方式非常相似,这是令人担忧的部分:它们太相似了,无法确定它对高度复杂的攻击者(想想国家安全局及其同行的水平)。
那么,为什么不使用SHA-2的更现代版本之一,甚至更好的SHA-3?他们没有已知的弱点,并且已经受到同行的广泛审查。因此,对于任何商业级别的用途,它们都应该绰绰有余。
参考: