gpt4 book ai didi

python - Python MD5、SHA512 (+salt) 加密的问题

转载 作者:太空狗 更新时间:2023-10-29 22:10:02 26 4
gpt4 key购买 nike

我试图了解 Linux 如何在 etc/shadow 文件上加密我们的密码,所以我没有新的虚拟“测试”用户来进行一些测试:

用户:新用户
密码:usrpw123
生成的盐: Ii4CGbr7

因此,操作系统使用 SHA512 加密系统($6$)在 etc/shadow 文件中添加了以下行: 99999:7:::

现在,我从 python 中获取 SHA512 模块并试试这个:

import hashlib
m = hashlib.sha512()
m.update('Ii4CGbr7'+'usrpw123')
print m.hexdigest

这给了我以下散列作为结果:c73156daca3e31125ce457f1343201cc8a26400b2974440af2cc72687922b48b6631d21c186796ea2756ad987a996d2b261fe9ff3af4cc81e14c3029eac5df55

如您所见,它与/etc/shadow 文件中的另一个不同,我不知道为什么我使用相同的 salt+password 来生成哈希。
谁能帮我解释一下为什么会这样?

另外,为什么/etc/shadow 文件会生成一个带有一些点 (.) 的散列?
谢谢

最佳答案

/etc/shadow 中的字段不是按照您认为的方式构建或解释的。您需要阅读 man page有关详细信息,但最明显的区别是它对 salt 和 hash 使用了不寻常的 base64 编码。

关于python - Python MD5、SHA512 (+salt) 加密的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5549102/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com