Creando una lista de palabras [cerrado]

0

¿Hay algo por ahí que pueda crear una lista de palabras con los siguientes parámetros?

  • La contraseña contiene [string_1] = aaaaaaaaaaaaa
  • La contraseña también contiene [string_2] = bbbbbbbb
  • [string_1] aparece antes de [string_2], es decir [string_1] [string_2]
  • Hay una cadena desconocida entre ellos y una cadena desconocida al final. es decir. [string_1] [unk_1] [string_2] [unk_2]
  • [unk_1] y [unk_2] tienen: min length = 1, max length = 3, solo contienen caracteres [123!]

En conjunto, no hay una cantidad masiva de combinaciones en comparación con la duración de la contraseña. ¿Hay algo que pueda usar ya que mi capacidad de codificación es algo deficiente?

Ejemplos de contraseña:

  • aaaaaaaaaaaaa12! bbbbbbbb13!
  • aaaaaaaaaaaaa12! bbbbbbbb1!
  • aaaaaaaaaaaaa12! bbbbbbbb2!
  • aaaaaaaaaaaaa! 23bbbbbbbb12!
  • aaaaaaaaaaaaa! bbbbbbbb12
  • etc.

Si alguien realmente quiere saber por qué necesito esto ... Un archivo .rar muy antiguo mío tiene una contraseña en este formato. Cosas dolorosas adivinando todo este tiempo.

    
pregunta T.BJ 14.02.2017 - 12:47
fuente

1 respuesta

1

He escrito un pequeño script que (con suerte) es lo que necesitas. No estoy seguro de que este sea el lugar adecuado para que preguntes esto, pero aquí tienes, de todos modos (Este es un script de python 3):

string1 = "aaaaaaaaaaaaa"
string2 = "bbbbbbbb"
out = open("someFile.txt",'w+')
unkPos = ["1","2","3","!",""]
unkAllOptions = []
for x in unkPos:
    for y in unkPos:
        for z in unkPos:
            unkAllOptions.append(x+y+z)
unkAllOptions = [val for val in unkAllOptions if val != ""]
for unk1 in unkAllOptions:
    for unk2 in unkAllOptions:
        out.write(string1+unk1+string2+unk2+"\n")
out.close()

Hay, por supuesto, formas mucho mejores de hacerlo, que no crean duplicados, etc. Pero como la lista de palabras resultante es bastante pequeña, me permito hacerlo de forma rápida y sucia.

    
respondido por el MiaoHatola 14.02.2017 - 13:08
fuente

Lea otras preguntas en las etiquetas