db={}
login=login1.get()
password=password1.get()
if bool(set('[~!@#$%^&*()_+{}":;\']+$').intersection(password))==True and bool(set('abcdefghijklmnopqrstuvwxyz').intersection(password))==True and bool(set('ABCDEFGHIJKLMNOPQRSTUVWXYZ').intersection(password))==True and bool(set('абвгдеёжзийклмнопрстуфхцчшщъыьэюя').intersection(password))==True and bool(set('АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ').intersection(password))==True:
h = hashlib.sha384(password.encode())
print(password)
db.update({login:h.hexdigest()})
with open('D:\\database.pkl', 'wb') as f:
pickle.dump(db,f)
with open('D:\\database.pkl', 'rb') as f:
print(pickle.load(f))
else:
mb.showerror("Ошибка","Пароль должен содержать символы Аа-Яя,Aa-Zz, спецсимволы!")
subsets = [
'[~!@#$%^&*()_+{}":;\']+$',
'abcdefghijklmnopqrstuvwxyz',
'ABCDEFGHIJKLMNOPQRSTUVWXYZ',
'абвгдеёжзийклмнопрстуфхцчшщъыьэюя',
'АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ'
]
def password_is_strong(password, min_length=0):
return len(password) >= min_length and all(map(set(password).intersection, subsets))
print(password_is_strong('Питон!=Delphi', 8))
try:
db = pickle.load('D:\\database.pkl')
except:
db = {}