Sto lavorando per la mia tesi di laurea, alla fine della quale tento di implementare un hash cracker basato su Javascript e proof-of-concept. L'idea è di lavorare in questo modo: gli utenti possono inviare un valore hash insieme alle informazioni sull'algoritmo utilizzato. (Altro) gli utenti possono anche fare clic su un pulsante sul sito Web per partecipare al processo di cracking. Il compito del server è quello di accettare e dividere gli ordini "inviati" in intervalli, a seconda del numero di lavoratori disponibili. Gli intervalli vengono quindi inviati ai clienti che hanno fatto clic su detto pulsante.
Attualmente sono bloccato con la grande domanda su come implementare realmente questa funzione di forza bruta. Quindi il mio problema principale ora è che, francamente, non sono ancora così deciso in Javascript. Per i principianti, vorrei solo usare un set di caratteri con codice fisso: alfanumerico, minuscolo e maiuscolo, senza caratteri speciali. Il problema è che non ho assolutamente alcun indizio su come implementare realmente la funzione che proverebbe tutte le combinazioni di caratteri, su come programmarlo. Posso immaginare di usare un normale array contenente il set di caratteri, quindi due stringhe. Una stringa dovrebbe contenere l'intervallo, l'altra conterrà le combinazioni provate. Quindi dovrei in qualche modo ripetere l'array charset e le stringhe magari con loop-in-loop o qualcosa del genere, ma sono davvero bloccato con la domanda di "come" esattamente :). Non mi aspetto che qualcuno di voi mi fornisca effettivamente il codice sorgente completo per tale funzione (a meno che non lo si voglia, ovviamente), ma apprezzerei davvero alcuni suggerimenti o spiegazioni su come implementare una tale funzione di forza bruta. A questo punto non mi preoccuperei nemmeno delle prestazioni o della codifica ottimizzata, ma piuttosto della codifica completa o di qualsiasi altra cosa si voglia chiamare.