Mi permetto di riaprire un attimo questa discussione per correggere una caz***a colossale da me detta nei giorni scorsi. Infatti, nella mia prima risposta dissi, riguardo alla tecnica del Brute Force, che il processo di generazione "non necessita affatto tanto tempo". Purtroppo però, la realtà dei fatti dimostra l'esatto contrario, soprattutto se, come qui è stato detto, si vogliano generare stringhe della lunghezza di 13 caratteri. Mi spiego meglio: visto che ritengo interessantissimo l'argomento qui trattato, in questi giorni mi sono informato meglio riguardo al metodo del Brute Force, alla sua implementazione, ecc. e mi sono pure permesso, nonostante non sia un vero e proprio programmatore, di scrivere un paio di script per testare quanto tempo un algoritmo di questo tipo possa necessitare per portare a compimento l'intero compito. Il risultato di questi test dimostra che le tempistiche di impiego non crescono linearmente rispetto al risultato prodotto: in altre parole, se dovessi ad esempio, generare delle stringhe da 6 caratteri, il tempo impiegato dall'algoritmo non equivalrebbe precisamente al doppio di quello che si impiegherebbe per generarle con solo 3 caratteri. Quindi, se in quest'ultimo caso il mio script impiega circa 15 secondi per generare tutte le possibili combinazioni, per generare tutte quelle che ne contengono 10 il tempo necessario si avvicina a 1,5 milioni di anni. Sicuramente con computer più performanti ed utilizzando linguaggi per programmare a più basso livello le tempistiche scenderebbero ma si continuerebbe comunque a parlare di anni, come unità temporale. Scusate, quindi, ancora una volta per lo sfondone e di nuovo in bocca al lupo all'autore di questa discussione.
EDIT
Non so se il regolamento di questo forum lo permette, però per chi vuole approfondire l'argomento su richiesta posso inviare entrambi gli script: il primo è stato scritto utilizzando Batch mentre il secondo utilizzando Python 2.7.