Open nithinmanoj10 opened 1 year ago
import re
from passlib import pwd
def pass_generation(length):
return pwd.genword(length=length, charset="ascii_72")
def pass_validation(password):
if len(password) < 8:
return False
if not re.search("[a-z]", password):
return False
if not re.search("[A-Z]", password):
return False
if not re.search("[0-9]", password):
return False
if not re.search("[^A-Za-z0-9]", password):
return False
return True
import argon2
def hash_password(password):
hash = argon2.hash_password_raw(
time_cost=16, memory_cost=2**15, parallelism=1, hash_len=32,
password=password.encode('ASCII'), salt=b'random salt', type=argon2.low_level.Type.ID)
return hash
def check_password(hash, password):
check_hash = argon2.hash_password_raw(
time_cost=16, memory_cost=2**15, parallelism=1, hash_len=32,
password=password.encode('ASCII'), salt=b'random salt', type=argon2.low_level.Type.ID)
return (check_hash == hash)
hash = hash_password("Password@1")
print(check_password(hash, "Password@1"))
print("Enter a stronger password. It must have a minimum length of 8 and contain at least one:\n 1. Uppercase letter\n 2. Lowercase letter\n 3. Number\n 4. Special character\n")
Project Research by Gayathri
Any form of material that is found useful while creating this password manager should be included in here. Can be used as reference much later. Useful for others members working on the project as well and would make our report writing easier towards the end. You can add any other form of material you find that is useful.
Feature Ideas
Online Articles
Videos
Here's why you should stop memorizing your passwords Refer this for writing the introduction section of the report
Inspiration from other software
Literature Review