Cette fonction permet d'effectuer un Brute Force (technique consistant à tester toutes les combinaisons de lettres) simple mais aussi un brute force multi-thread.
Le brute force multi-Thread vous sera utile si vous devez faire un test à chaque nouvelle combinaison trouvée et que ce test implique l'attente d'une réponse (la réponse d'un serveur par exemple), je m'explique : si vous êtes dans ce cas-là et que vous n'utilisez qu'un seul thread, vous devez par exemple attendre 2 secondes entre chaque mots de passe et donc la capacité de votre ordinateur n'est pas utilisée au maximum !
Alors que si vous vous servez de plusieurs threads (par exemple 20 threads), vous irez 20 fois plus vite !
La fonction permet :
-de choisir les caractères à utiliser dans le brute force.
-de choisir le nombre maximum de caractères générés.
-de reprendre le brute force à partir d'une chaîne de caractères.
L'exemple d'utilisation de la fonction (donc le programme) permet de calculer :
-le pourcentage effectué.
-le débit (nombre de combinaison trouvés par secondes)
-le temps restant.
Tous les tests nécessaires au bon fonctionnement du programme sont aussi présents dans l'exemple, donc normalement, il ne doit y avoir aucun bug... à part la limitation du nombre maximum de caractères générés ! (je n'y ai trouvé aucune solution, mais ne vous inquiètez pas, vous pouvez quand même effectuer un brute force contenant 36 caractères avec maximum 9 caractères générés).
Les fonctions permettant de lancer un simple thread et un multi thread sont différentes, le code se trouvant si dessous ne permet que de faire un brute force simple....
Et vous pouvez utiliser librement cette fonction (avec son exemple) si elle vous plaît !