使用 DES 算法破解密码给定散列和盐

Cracking passwords with DES algorithm given hash and salt

我得到了一个散列值(“1u9Tc6HX”)和盐值(“Ff”),我被告知要破解密码,因为它已经用 DES 算法进行了散列处理。使用 hashcat,我知道密码是 ("michael"),我现在正尝试对这个密码进行哈希处理,以便将它与给定的哈希值进行比较。 但是,我尝试使用 (openssl enc) 命令,但它总是询问我用于加密的密码,我没有给出什么,所以我不知道如何使用 DES 和 salt ("Ff ") 并得到 ("1u9Tc6HX")。我愿意更改程序并尝试其他方法,以防您认为通过其他方式更容易破解。 (我正在与 python 合作) 感谢任何评论和帮助。

PD: 示例:Ff1u9Tc6HXxJo 说明:密码​​已使用 DES 算法进行散列处理。该条目包括 在 13 个可打印的 ASCII 字符中,其中前两个字符代表盐。 使用 DES,仅使用密码的前 8 个字符。

Passlib 是一个流行的密码散列库:

>>> import passlib.hash
>>> passlib.hash.des_crypt.hash('michael', salt='Ff')
'Ff1u9Tc6HXxJo'