Update check.py
This commit is contained in:
@@ -1,52 +1,40 @@
|
|||||||
def checkLength(passw):
|
def checkLength(psw):
|
||||||
if 20 >= len(passw) >= 8:
|
if 20 >= len(psw) >= 8:
|
||||||
return 0
|
return 0
|
||||||
elif len(passw) > 20:
|
elif len(psw) > 20:
|
||||||
return len(passw) - 20
|
return len(psw) - 20
|
||||||
return 8 - len(passw)
|
return 8 - len(psw)
|
||||||
|
|
||||||
|
|
||||||
def checkRepeating(passw):
|
def checkRepeating(psw):
|
||||||
steps = 0
|
steps = 0
|
||||||
i = 0
|
|
||||||
tempSteps = 1
|
tempSteps = 1
|
||||||
while (len(passw) > 1):
|
while len(psw) > 1:
|
||||||
x = passw[0]
|
x = psw[0]
|
||||||
if passw[1] == x:
|
if psw[1] == x:
|
||||||
tempSteps += 1
|
tempSteps += 1
|
||||||
passw = passw[1:]
|
psw = psw[1:]
|
||||||
else:
|
else:
|
||||||
if tempSteps > 2:
|
steps = tempSteps - 2 + steps if tempSteps > 2 else steps
|
||||||
steps += tempSteps - 2
|
|
||||||
tempSteps = 1
|
tempSteps = 1
|
||||||
passw = passw[1:]
|
psw = psw[1:]
|
||||||
if steps == 0:
|
|
||||||
return 0
|
|
||||||
return steps
|
return steps
|
||||||
|
|
||||||
|
|
||||||
def checkComposition(passw):
|
def checkComposition(psw):
|
||||||
# lowercase, uppercase, numeric, special
|
|
||||||
values = [0, 0, 0, 0]
|
values = [0, 0, 0, 0]
|
||||||
counter = 0
|
for x in psw:
|
||||||
for x in passw:
|
values[0] = 1 if x.islower() else values[0]
|
||||||
if x.islower():
|
values[1] = 1 if x.upper() else values[1]
|
||||||
values[0] = 1
|
values[2] = 1 if x.isnumeric() else values[2]
|
||||||
if x.isupper():
|
|
||||||
values[1] = 1
|
|
||||||
if x.isnumeric():
|
|
||||||
values[2] = 1
|
|
||||||
if x in ['@', '_', '!', '#', '$', '%', '^', '&', '*', '(', ')', '<', '>', '?', '/', '\'', '|', '}', '{', '~',
|
if x in ['@', '_', '!', '#', '$', '%', '^', '&', '*', '(', ')', '<', '>', '?', '/', '\'', '|', '}', '{', '~',
|
||||||
':', '-']:
|
':', '-']:
|
||||||
values[3] = 1
|
values[3] = 1
|
||||||
for x in values:
|
return values.count(0)
|
||||||
if x == 1:
|
|
||||||
counter += 1
|
|
||||||
return 4 - counter
|
|
||||||
|
|
||||||
|
|
||||||
def checkPassword(passw):
|
def checkPassword(psw):
|
||||||
x = max(checkLength(passw), checkComposition(passw), checkRepeating(passw))
|
x = max(checkLength(psw), checkComposition(psw), checkRepeating(psw))
|
||||||
if x:
|
if x:
|
||||||
return x
|
return x
|
||||||
return "good"
|
return "good"
|
||||||
|
|||||||
Reference in New Issue
Block a user