Voir LE ZIP
Télécharger le zip
"il est rapide"... t'as essayé de trouver un mot de passe, comme ça, juste pour voir? A raison de 5 sec. par tentative (faut bien les tester les mots générés), pour un mot de passe de 5 caractères (ce qui est peu), ça prendrait de l'ordre du millier d'années... alors bon pour la rapidité on repassera je pense. D'autre part, je ne vois pas l'utilité de ce code puisqu'il se contente d'énumérer les combinaisons alpha-numériques possibles, ce qu'on peut très bien faire directement à la main.
pour ajouter, le seul intérêt éventuel aurait été d'épargner à l'utilisateur la tâche du test des mots de passe, autrement dit un code qui effectue lui-même la vérification sur le fichier ciblé (y a moyen de revenir à une durée de l'ordre de l'année alors probablement). Ceci rendrait ton code plus intéressant je pense, car en l'état, force est de constater qu'il ne sert à rien.
Oui l'algorithme seul ne sert a rien mais ce morceau de code est utile pour les gens qui veulent des programmes de décryptage par forcebrute pour par exemple : MD5,casser le mot de passe zip,rar,etc..
Oui tu as raison
Salut, Il y a quelques bonnes idees, mais ca reste tres facilement ameliorable. C'est dommage d'utiliser des % et des divisions (tres lentes) dans ta boucle. Si ton jeu de caracteres a essayer avait la taille d'une puissance de 2 (par exemple 64), tu pourrais t'en sortir avec des >> et des & bien plus rapides. Petit detail: Pourquoi dimensionner ton rotation a 200 ? tu pourrais utiliser rotation[]. De meme, tu peux gagner un peu de temps en remplacant le strlen() par sizeof(rotation)/sizeof(char) (qui sera calcule a la compilation une fois pour toutes). Tu peux aussi eviter de faire un pow (tres couteux) a chaque iteration: Tu mets: end=pow(len,j-1); juste avant la boucle, et tu reemplaces ton ancien appel par: end *= j; Du coup, tu n'as plus qu'un seul appel a pow par execution et une multiplication par iteration (au lieu d'un appel a pow par iteration). Voila, amuse toi-bien a optimiser tout ca ! Eric
Merci Pour les conseils LeFauve42
Merci Eric
Quelqu'un a vérifié les résultats ??? on a: len = strlen(rotation); donc possible 105 ici. dans la boucle: end = (long int) pow(len, j); donc possible: end = pow(105, 105); qui donne 1.6783263083479555842921809575671e+212 ça rentrerait sur entier 64 bits ??? A moins de n'avoir rien compris à l'histoire, ça me semble du grand nimporte quoi.
A ton avis mr.BruNew est-ce qu'il ya un motdepasse qui contient 105 charachtère a mon avis c'est toi mon vieux qui dit n'importe quoi
Ah ben voila l'explication manquante, j est longueur du mot de passe. Pour autant, avec un password de 12: pow(105, 12) = 1795856326022129150390625 UINT64 max = 18446744073709551615 Cette méthode limite le password à 9 char maxi en bossant avec du UINT64, faudra pas le perdre de vue.
Bien vu BruNews, Je n'avais pas fait attention a cette limite :o) De toutes facons, il faut relativiser un peu : Meme en testant 1.000.000.000 cles/secondes (ce qui est beaucoup) il faudrait presque 50 ans pour essayer tous les mots de passes a 9 caracteres :o) On pourrait facilement faire reculer cette limite avec un appel recurcif sans trop d'impact sur les performances (un appel de fonction tous les 49 ans, 57 jours et des brouettes ne vas pas ralentir notablement le programme :op ) mais je ne suis pas sur que ce soit le vrai probleme... Bien qu'inutilisables dans la vraie vie, ces algos sont toujours assez interessants a optimiser, juste pour le fun. Oh1234: A notre epoque, avec les smartcards et autres solutions a base de "keyfile" sur cle USB, un mot de passe peut faire bien plus que 107 caracteres (sans parler des solutions a base de "phrases de hash", mais pour craquer ces dernieres une attaque brute force sur la phrase n'est pas le moyen le plus efficace).
Merci pour tous ces remarques et tous ces conseils car j'en suis besoin
Comment on l'installe ???Aidez moi svp
Il faut compiler et exécuter.
Bonjour, j'aimerais avoir un renseignement j'ai mit pour le fun le code source dans " codeblock" puis j'ai compiler mais je ne trouve pas ce qui a été compiler. Merci d'avance.
Se souvenir du profil
Mot de passe oublié ? / Activation de compteCréer un compte
1 873 545 membres 72 nouveaux aujourd'hui 16 151 membres club