Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from hashlib import *
- from user import *
- import re
- email_regex = re.compile("(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|\"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*\")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])")
- password_regex = re.compile("^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{8,}$")
- password = ""
- def is_good_email(email):
- p = email_regex.match(email)
- return p
- def is_good_password(password):
- p = password_regex.match(password)
- return p
- def security(fonction):
- def create(user_password=""):
- global password
- if user_password != "":
- password = sha256(user_password.encode("utf-8")).hexdigest()
- return fonction()
- print("Le mot de passe doit être créé !! \n")
- password_user = input("Créer un mot de passe : Saisissez un mot de passe \n")
- while not is_good_password(password_user):
- password_user = input(
- "Saisissez un mot de passe valide (+8caractères|1 chiffre minimum|1 caractère majuscule minimum) \n")
- password = sha256(password_user.encode("utf-8")).hexdigest()
- return fonction()
- if password == "":
- return create
- else:
- return fonction()
- @security
- def login(user_password=""):
- user = None
- email = input("Saisissez votre adresse Email \n")
- while not is_good_email(email):
- email = input("Saisissez une adresse mail valide \n")
- while not user:
- user_pass = input("Saisissez votre mot de passe \n")
- encrypted_pass = sha256(user_pass.encode("utf-8"
- )).hexdigest()
- if encrypted_pass == password:
- user = User(email, encrypted_pass)
- print("Sécurité passé, utilisateur authentifié")
- login("salut")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement