python - Ocultar la entrada de la contraseña raw_input()
masking raw-input (3)
Quiero ocultar mi contraseña pero no sé cómo. He visto show="*"
y también getpass
pero no sé cómo colocarlos en este código. Estoy usando Python 2.7.3 y codificando en una Raspberry 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''s 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()
Nunca almacene userId y contraseña en un archivo fuente, ¡eso es una vulnerabilidad de seguridad!
Guárdelos en un archivo de texto y cifrándolos con alguna criptografía de clave simétrica (al menos MD5, o el estándar mínimo sugerido actualmente, el SHA-3) para codificar la contraseña.
El resultado se vería algo así como:
: admin: $ 1 $ dqx / Wdy5 $ QQrH98XjvFBOm6vqu3qN / 1 :: Administrator: admin: [email protected]:
En su código, bloquee su lectura del archivo y use el mismo algoritmo para descifrar la contraseña.
Use la biblioteca hashlib de Python para tomar el hash MD5 de la entrada y compárelo con una versión hash de su contraseña en el script. Here''s un ejemplo de cómo podrías hacerlo.
getpass
oculta la entrada, simplemente reemplaza raw_input
después de importar el módulo getpass
, como esto:
import getpass
.
.
.
pa = getpass.getpass()