From 4d748d34e668dbc9fb28caa2e0bc0730b6aab801 Mon Sep 17 00:00:00 2001 From: AngelEOrellana <71674390+AngelEOrellana@users.noreply.github.com> Date: Thu, 23 May 2024 19:39:07 -0500 Subject: [PATCH 1/2] Proyecto validacion de contrasenia grupo Angel Orellana y Daniel Armijos --- validacion_contrasenia.py | 50 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 validacion_contrasenia.py diff --git a/validacion_contrasenia.py b/validacion_contrasenia.py new file mode 100644 index 0000000..c5ef527 --- /dev/null +++ b/validacion_contrasenia.py @@ -0,0 +1,50 @@ +import re + +def verificar_contraseña(contraseña): + puntuación = 0 + criterios = { + 'longitud': len(contraseña) >= 8, + 'mayúsculas': bool(re.search(r'[A-Z]', contraseña)), + 'minúsculas': bool(re.search(r'[a-z]', contraseña)), + 'números': bool(re.search(r'[0-9]', contraseña)), + 'especiales': bool(re.search(r'[!@#$%^&*(),.?":{}|<>]', contraseña)) + } + + for criterio, cumple in criterios.items(): + if cumple: + puntuación += 1 + + return puntuación, criterios + +def main(): + contraseña = input("Ingrese una contraseña: ") + puntuación, criterios = verificar_contraseña(contraseña) + + if puntuación >=1 and puntuación <=2: + val="Bajo" + elif puntuación >=3 and puntuación <=4: + val="Medio" + elif puntuación ==5: + val="Alto" + elif puntuación ==0: + val="Bajo" + + print(f"Puntuación de la fortaleza de la contraseña: {puntuación}/5 y su nivel de seguridad es: {val}") + if puntuación < 5: + print("La contraseña debe cumplir con los siguientes criterios:") + if not criterios['longitud']: + print("- Tener al menos 8 caracteres.") + if not criterios['mayúsculas']: + print("- Incluir al menos una letra mayúscula (A-Z).") + if not criterios['minúsculas']: + print("- Incluir al menos una letra minúscula (a-z).") + if not criterios['números']: + print("- Incluir al menos un dígito (0-9).") + if not criterios['especiales']: + print("- Incluir al menos un carácter especial (por ejemplo, !, @, #, $, etc.).") + else: + print("¡La contraseña es robusta!") + +if __name__ == "__main__": + main() + From 179091dc89c2fc06bdee1d1f3388577e8379066a Mon Sep 17 00:00:00 2001 From: AngelEOrellana <71674390+AngelEOrellana@users.noreply.github.com> Date: Thu, 23 May 2024 19:44:17 -0500 Subject: [PATCH 2/2] Validacion contrasenia Daniel Armijos, Angel Orellana --- validacion_contrasenia.py | 1 + 1 file changed, 1 insertion(+) diff --git a/validacion_contrasenia.py b/validacion_contrasenia.py index c5ef527..00f97aa 100644 --- a/validacion_contrasenia.py +++ b/validacion_contrasenia.py @@ -44,6 +44,7 @@ def main(): print("- Incluir al menos un carácter especial (por ejemplo, !, @, #, $, etc.).") else: print("¡La contraseña es robusta!") + if __name__ == "__main__": main()