Solución al Ejercicio: Validar seguridad clave
📋 Copiar código
def validar_seguridad_clave(clave):
"""
Valida si una cadena de texto cumple con ciertos criterios de seguridad
para ser una clave.
Args:
clave: La cadena de texto a validar.
Returns:
True si la clave cumple con los criterios, False en caso contrario.
"""
if len(clave) < 8:
return False
tiene_mayuscula = False
tiene_minuscula = False
tiene_numero = False
for caracter in clave:
if 'A' <= caracter <= 'Z':
tiene_mayuscula = True
elif 'a' <= caracter <= 'z':
tiene_minuscula = True
elif '0' <= caracter <= '9':
tiene_numero = True
return tiene_mayuscula and tiene_minuscula and tiene_numero
# Ejemplos de uso
clave1 = "Segura123"
resultado1 = validar_seguridad_clave(clave1)
print(f"'{clave1}' es segura: {resultado1}")
clave2 = "segura"
resultado2 = validar_seguridad_clave(clave2)
print(f"'{clave2}' es segura: {resultado2}")
clave3 = "SEGURA"
resultado3 = validar_seguridad_clave(clave3)
print(f"'{clave3}' es segura: {resultado3}")
clave4 = "12345678"
resultado4 = validar_seguridad_clave(clave4)
print(f"'{clave4}' es segura: {resultado4}")
clave5 = "Segura"
resultado5 = validar_seguridad_clave(clave5)
print(f"'{clave5}' es segura: {resultado5}")
clave6 = "segura1"
resultado6 = validar_seguridad_clave(clave6)
print(f"'{clave6}' es segura: {resultado6}")
clave7 = "SEGURA1"
resultado7 = validar_seguridad_clave(clave7)
print(f"'{clave7}' es segura: {resultado7}")
clave8 = "S1"
resultado8 = validar_seguridad_clave(clave8)
print(f"'{clave8}' es segura: {resultado8}")
clave9 = ""
resultado9 = validar_seguridad_clave(clave9)
print(f"'' es segura: {resultado9}")
Explicación del Código:
- Función
validar_seguridad_clave(clave)
:
- Primero, verifica si la longitud de la
clave
es al menos 8 caracteres. Si no lo es, devuelve
False
.
- Inicializa tres variables booleanas (
tiene_mayuscula
,
tiene_minuscula
, tiene_numero
) a False
.
- Itera a través de cada
caracter
en la clave
.
- Para cada carácter, verifica si es una
letra mayúscula, una letra minúscula o un número, y establece la
variable booleana correspondiente a
True
si se encuentra al
menos un carácter de ese tipo.
- Finalmente, devuelve
True
si
las tres variables booleanas son True
(lo que significa que
la clave cumple con todos los criterios), y False
en caso
contrario.
Ejemplos de Uso:
Los ejemplos muestran cómo la función evalúa
diferentes cadenas para determinar si cumplen con los criterios de seguridad
definidos.