理解和破解盐值 sha512 哈希

3
在Ubuntu 12.04上,我创建了多个用户和密码,然后立即尝试使用John the ripper破解这些密码。其中一个密码非常强,但其他密码在我的字典中。
John仍在运行中,但我已经在大约20分钟内破解了两个密码。
我读到的所有内容都涉及盐是否已知。以这个哈希为例:
john:$6$YiP34XiXdXyh9fZn$JrbLMb.VGncFzEyBlz5YsKUim.UE5JLPvFhfcgAH4lz.usOrh.lic8IrQx0PRMIvIIIK4KnaTs9fiEXwNOLJ1/:1003:1003:John,,,:/

盐值是:
YiP34XiXdXyh9fZn   

我是说,不是吗?” 我的意思是,它不总是被知道吗?因此,盐确实没有什么作用,只是防止使用彩虹表,对吧?

还有这篇文章:

如何破解具有哈希盐值的SHA-512哈希?(提供了盐)

根据那篇文章,在没有密码字典的情况下,sha512基本上无法被破解。那篇文章已经有一年了,有人有新的想法吗?我发现很难找到关于破解哈希的好资源;所有的信息都是关于生成哈希和保护密码的。


你读过《盐值密码哈希——正确的做法》吗?这是一篇非常有用的介绍关于盐值、密码破解等方面的文章。 - David Cain
很好的建议,非常有帮助。所以当我看到别人提到盐是否已知时,这是因为盐确实必须始终是哈希的一部分。我仍然对暴力破解sha512感到好奇;如果密码不在字典中,是否可能进行破解? - user1616244
在这个问题上:“不是一直都知道吗?所以盐确实没有什么作用,只是防止使用彩虹表,对吧?” 盐的目的不是为了这个,而是为了添加一个唯一的密钥,每个密码都是唯一的。 - mhvvzmak1
2个回答

1

这篇文章实际上很旧,但我仍想进行更正。
它不仅适用于彩虹表攻击,还适用于针对整个数据库的常见攻击。
攻击者捕获密码数据库后不会愚蠢到单独攻击每个哈希值。
他会一次性攻击它们全部。
因此,在进行字典攻击时,他只需为每个哈希值计算一次,然后与数据库中的所有哈希值进行比较。
而如果使用随机盐,他必须为每个密码单独计算每个哈希值。
这将变慢,减速因子接近哈希数量。
加盐的大型数据库比纯哈希数据库更难攻击。


1
  1. 在你的例子中,盐值是 YiP34XiXdXyh9fZnbase-64 编码)。

  2. 是的,在这种情况下,盐值只能防止彩虹表攻击。

  3. SHA512 目前仍然安全。攻击者需要一个密码列表。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接