gpt4 book ai didi

python - 使用 python 在 Windows 上创建兼容的 ldap 密码 (md5crypt)

转载 作者:可可西里 更新时间:2023-11-01 13:54:02 29 4
gpt4 key购买 nike

你知道如何在 Windows 上通过 python 创建一个 ldap 兼容密码(首选 md5crypt)

我曾经在 Linux 中写过类似的东西,但 crypt 模块在 Windows 上不存在

char_set = string.ascii_uppercase + string.digits
salt = ''.join(random.sample(char_set,8))
salt = '$1$' + salt + '$'
pwd = "{CRYPT}" + crypt.crypt(str(old_password),salt)

最佳答案

Passlib python 库包含所有 crypt(3) 算法的跨平台实现。特别是,它包含 ldap_md5_crypt ,这听起来正是您想要的。下面是如何使用它(此代码适用于 Windows 或 Linux):

from passlib.hash import ldap_md5_crypt

#note salt generation is automatically handled
hash = ldap_md5_crypt.encrypt("password")

#hash will be similar to '{CRYPT}$1$wa6OLvW3$uzcIj2Puf3GcFDf2KztQN0'

#to verify a password...
valid = ldap_md5_crypt.verify("password", hash)

我应该注意到,虽然 MD5-Crypt 得到了广泛支持(Linux、所有 BSD、内部在 openssl 中),但它无论如何都不是可用的最强哈希确实非常不安全,应该尽可能避免。如果您想要与 linux crypt() 兼容的最强散列,SHA512-Crypt 可能是最佳选择。它在内部添加了可变轮次,以及对 MD5-Crypt 的一些其他改进。

关于python - 使用 python 在 Windows 上创建兼容的 ldap 密码 (md5crypt),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4070601/

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