我一直在努力对我一直在研究的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()
答案 0 :(得分:1)
首先,让我先说一下,特别是如果您是初学者,尝试为任何公开且严重需要安全性的任何内容实施您自己的登录/安全代码通常不是一个好主意。
话虽如此,隐藏实际密码的一般方法是存储密码的哈希值(例如SHA-1),而不是密码本身。然后,您可以安全地将该哈希值存储在任何您喜欢的位置(例如数据库,文本文件等) 在python中,您可以使用hashlib之类的内容执行此操作,例如
import hashlib
sh = hashlib.sha1()
sh.update('password')
hash_value = sh.hexdigest()
# write hash_value to file/db...
当您根据存储的密码进行验证时,您将获取用户输入的哈希值并将其与存储的哈希值进行比较。如果它们相同,则密码正确。
同样,对于任何严重的安全性,请使用许多可用的框架之一,因为它们已经过很多人的测试。
答案 1 :(得分:0)
您应该尝试此代码
list1 = ('Password is Correct...' , 'Password is Incorrect' , 'Closing Python...','Hello',
'''Press Enter to Continue...''', 'Closing Python...' , 'badger123',
'''Please Enter Your Name: ''', 'Please Enter Your Password: ')
name = input(list1[7])
password = input(list1[8])
if password == list1[6]:
print(list1[0])
else:
print(list1[1])
exit()
import time
time.sleep(0)
input(list1[4])
time.sleep(0)
print (list1[3] , name)
import time
time.sleep(1)
print (list1[5])
import time
time.sleep(5)
input (list1[4])
exit()