我有几个(旧的)Linux系统,用户和密码保存在本地数据库中。这个过程很简单。使用python,系统会要求您输入密码,使用python的crypt模块处理输入的纯文本密码,然后将散列密码保存到数据库中。
例如,
# Password.py (not editable)
Debug = 1
import getpass
plain_pass = getpass.getpass()
# e.g. plain_pass="pass"
import crypt
crypt_pass = crypt.crypt( plain_pass, r'$1$xx')
# The salt r'$1$xx' can not be changed
if Debug:
print (crypt_pass) # Result: $1$xx$Ik.nuioJufb1VPeTbLQ.y/
(暂时忽略安全问题) 我想提供一个简单的文本文件,其中存储了用户名和散列密码:
Sample Password.txt file
user1 $1$xx$Ik.nuioJufb1VPeTbLQ.y/
user2 $1$xx$x2gmo6Eob2udHl0tNU2Zw0 (password is 123)
Windows服务器将托管所有Linux机器的文件,它还提供用户界面,用户可以在其中修改密码或创建新用户。
使用windows(VB或任何其他win应用程序),如何生成与python的crypt.crypt()相同的哈希?
pass ---> $1$xx$Ik.nuioJufb1VPeTbLQ.y/
123 ---> $1$xx$x2gmo6Eob2udHl0tNU2Zw0
hello ---> $1$xx$zrPVW4APkg66JghmAwqmA.
üfñ2 ---> $1$xx$CPthCTb1yiYoLfl3VmrJl/