0
私は古いプロジェクトに取り掛かりました。何が間違っているのかわかりません。 これは、パスワードを初めて作成された部分であり、これはメインスクリプトからである:これは、ログインスクリプトでpasslibを使ってパスワードを確認できません
def first():
if os.path.isfile("secret.txt"):
folder()
else:
os.system("echo > secret.txt")
password = getpass.getpass("Set your password please --> ")
while len(password) < 4:
print("Password must have more then 4 characters!")
else:
password1 = getpass.getpass("repeat your password please --> ")
while password1 != password:
print("Password don't match")
password1 = getpass.getpass("repeat your password please --> ")
if password1 == password:
a = open('secret.txt', 'w').close()
f = open('secret.txt', 'w')
hashed_password = pbkdf2_sha256.hash(password)
f.write(hashed_password)
os.system("attrib +h secret.txt")
folder()
ここからパスワードがチェックされます
def log_in():
f = open("secret.txt", "r")
Password = f.read()
x = 0
while x < 5:
getPass = getpass.getpass("Password:")
if not pbkdf2_sha256.verify("getPass", Password):
print("Password is invalid")
x = x + 1
else:
f.close()
os.system('cls')
print("Welcome back sir\n")
x = 10
time.sleep(2)
if x == 5:
print("acces denied")
time.sleep(5)
os.system("nothing.bat")
だから問題がありますパスワードを確認しようとすると、正しくないと言われますが、パスワードは同じです。ドキュメントでは、それは言う:
注各呼び出しは、新しい塩を生成するので、結果のハッシュの内容は(入力と同じパスワードを使用しているにもかかわらず)の呼び出しの間で異なること:
これがあれば.verify()で問題が発生したら、どうすればよいですか?
私は全体のソースコード
を掲載する予定でない場合、私は私が思う..私はおそらくいくつかの愚かなことをしないのですが、私はそれを見つけるように見えるカント、