Encryption 散列冲突的含义是什么?
我理解,冲突将减少对哈希算法进行暴力攻击所需的工作量,因为存在具有相同输出的多个输入 然而,我不清楚的是碰撞会导致的其他类型的攻击,以及它们到底有多有害?并非哈希算法中发现的所有弱点都会使算法在技术上变得薄弱。即使在发生碰撞的情况下,使用蛮力也可能是不可行的。那么,碰撞使哪些攻击变得更容易呢 另外,是否不可能附加某种附加校验和或摘要作为最终哈希的附加部分以防止冲突?例如,通过在输出上添加一对校验和字节,可以降低冲突产生与校验和耦合的相同哈希输出的概率?甚至可以在附加校验和之前对校验和进行哈希运算,使该值更安全 o=散列(i)和(散列(校验和(i))Encryption 散列冲突的含义是什么?,encryption,hash,Encryption,Hash,我理解,冲突将减少对哈希算法进行暴力攻击所需的工作量,因为存在具有相同输出的多个输入 然而,我不清楚的是碰撞会导致的其他类型的攻击,以及它们到底有多有害?并非哈希算法中发现的所有弱点都会使算法在技术上变得薄弱。即使在发生碰撞的情况下,使用蛮力也可能是不可行的。那么,碰撞使哪些攻击变得更容易呢 另外,是否不可能附加某种附加校验和或摘要作为最终哈希的附加部分以防止冲突?例如,通过在输出上添加一对校验和字节,可以降低冲突产生与校验和耦合的相同哈希输出的概率?甚至可以在附加校验和之前对校验和进行哈希运算
- 如果您使用散列来分配负载,攻击者可以将所有散列的输入手工输入到同一台机器,并使该机器过载
- 如果您使用散列作为用户数据的标识符,攻击者可以创建文件,生成与随机其他用户数据相同的散列,从而替换该数据
在第一种情况下,通过将进程ID包含在哈希中以防止冲突来解决此问题。在第二种情况下,当一个新文件将替换现有文件时,添加了一条错误消息。给出注释后,问题似乎与密码破解有关 发现散列密码的问题通常是通过经常使用的密码列表来完成的,请参阅 阻止此类攻击的主要方法是使用密码散列方法创建密码验证器,该验证器需要大量时间,通常约为100ms。此类函数包括PBKDF2、Argon2、password_hash、bcrypt等 在SHA2和更高版本中,发现冲突的机会非常小,因此在密码破解中不考虑冲突,没有额外的优势 此外,攻击者通常对单个密码不感兴趣,而是对通过访问用户数据库获得的大部分密码感兴趣。然后,这些凭据在黑暗的网络上大量出售。尤其是一个用户受到攻击,这就是矛式网络钓鱼,通常有更好的方法 有关更多信息,请参阅:
- 信息安全
- 阿尔斯特尼卡
- 高级密码恢复