我一直在尝试在我一直在使用的python程序上进行安全登录,但是我尝试执行的所有操作似乎都无济于事。我需要一小段可放入脚本的代码。我的主要问题是,任何查看我的脚本的人都只能看到密码。另外,我不知道在输入密码时如何用星号代替字符。这是我的登录代码,非常基本,因为我几乎是一个初学者。
#login
import webbrowser as w
def username():
print("Enter UserName")
usrnm = input()
if(usrnm == "example"):
password()
else:
notusername()
def notusername():
print("Try Again")
username()
def password():
print("Enter Password")
pswrd = input()
if(pswrd == "password"):
w.open("www.example.net")
else:
notusername()
username()
最佳答案
首先,让我开始说这句话,特别是如果您是初学者,尝试对任何公开的且严重需要安全性的东西实施自己的登录名/安全性代码通常不是一个好主意。
话虽这么说,隐藏实际密码的一般方法是存储密码的哈希(例如SHA-1),而不是密码本身。然后,您可以在任意位置安全地存储该哈希值(例如数据库,文本文件等)
在python中,您可以使用hashlib之类的方法进行操作,例如
import hashlib
sh = hashlib.sha1()
sh.update('password')
hash_value = sh.hexdigest()
# write hash_value to file/db...
当您针对存储的密码进行验证时,将用户输入的哈希值与存储的哈希值进行比较。如果它们相同,则密码正确。
同样,对于任何严格的安全性,请使用可用的许多框架之一,因为它们已经过许多人的测试。
关于python - 安全的Python登录,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27994098/