Ответ 1
getpass
скрывает ввод, просто замените raw_input
после импорта модуля getpass
, например:
import getpass
.
.
.
pa = getpass.getpass()
так что это мой код, и я хочу скрыть свой пароль, но я не знаю, как это сделать. я огляделся, и никто из них, похоже, не вписывается в мое кодирование, это текущая кодировка. я имею в виду, что я видел show = "*", а также getpass, но я не знаю, как разместить их в этой кодировке. im, используя python 2.7.3 и im кодирование на малине pi.
ans = True
while ans:
print("""
-------------
| 1. Shutdown |
| 2. Items |
-------------
""")
ans=raw_input("""
Please Enter A Number: """)
if ans == "1":
exit()
elif ans == "2":
pa=raw_input("""
Please Enter Password: """)
if pa == "zombiekiller":
print("""
----------------
| 1. Pi password |
| 2. Shutdown |
----------------
""")
pe=raw_input ("""
Please Enter A Number: """)
if pe == "1":
print ("""
Pi Password Is Adminofpi""")
import time
time.sleep(1)
exit()
elif pe == "2":
exit()
else:
print("""
You Have Entered An Inccoredt Option. Terminating Programm""")
import time
time.sleep(1)
exit()
else:
print("""
You Have Entered An Inccorect Password. Terminating Programm""")
import time
time.sleep(1)
exit()
getpass
скрывает ввод, просто замените raw_input
после импорта модуля getpass
, например:
import getpass
.
.
.
pa = getpass.getpass()
Используйте библиотеку hashlib Python, чтобы взять хэш MD5 на вход, и сравните его с хешированной версией вашего пароля в script. Вот пример, как вы могли это сделать.
Никогда не храните userId и пароль в исходном файле, эту уязвимость!
Сохраните их в текстовом файле и зашифруйте их с помощью некоторой криптографии с симметричным ключом (по крайней мере MD5 или предлагаемый в настоящее время минимальный стандарт SHA-3) для кодирования пароля.
Результат будет выглядеть примерно так:
: администратор: $1 $DQX/Wdy5 $QQrH98XjvFBOm6vqu3qN/1:: Администратор: админ: [email protected]:
В вашем блоке кода вы читаете файл и используете тот же алгоритм для дешифрования пароля.