Una función llamada descifrar(cadena), que reciba como parámetro una cadena de caracteres (contraseña) con una longitud máxima de 10 caracteres y muestre todas las combinaciones realizadas hasta descifrar el texto ingresado.
cadena = oculto/123
descifrar(cadena)
Cómo lo podría descifrar?
def descifrar(cadena):
caracteres = list(cadena)
longitud = len(caracteres)
combinaciones = 2**longitud
for i in range(combinaciones):
combinacion = bin(i)[2:].zfill(longitud)
candidata = ''
for j in range(longitud):
if combinacion[j] == '0':
candidata += caracteres[j].lower()
else:
candidata += caracteres[j].upper()
print(candidata)
if candidata == cadena:
break