-
- #include <stdio.h>
- #include <stdlib.h>
- #include <time.h>
-
- #define MINCHAR 33
- #define MAXCHAR 126
-
- char *bruteforce(int passlen, int *ntries);
-
- int main(void) {
-
- int i, wdlen, counter;
- char *str;
- clock_t start, end;
- double elapsed;
-
- do {
- printf("Taille du mot(nombre de lettres)... ");
- scanf("%d", &wdlen);
- } while(wdlen<2);
-
- start = clock();
-
- bruteforce(wdlen, &counter);
-
- end = clock();
-
- elapsed = ((double) (end - start)) / CLOCKS_PER_SEC;
- printf("\nNombres de mots... %d \n",counter);
- printf("\nTemps ecoule... %f secondess\n",elapsed);
-
- return counter;
-
- }
-
- char *bruteforce(int passlen, int *ntries) {
-
- int i;
- char *str;
-
- *ntries=0;
-
- passlen++;
-
- str = (char*)malloc( passlen*sizeof(char) );
-
- for(i=0; i<passlen; i++) {
- str[i]=MINCHAR;
- }
- str[passlen]='\0';
-
- while(str[0]<MINCHAR+1) {
- for(i=MINCHAR; i<=MAXCHAR; i++) {
- str[passlen-1]=i;
- (*ntries)++;
- puts(&str[1]);
- }
-
- if(str[passlen-1]>=MAXCHAR) {
- str[passlen-1]=MINCHAR;
- str[passlen-1-1]++;
- }
-
- for(i=passlen-1-1; i>=0; i--) {
- if(str[i]>MAXCHAR) {
- str[i]=MINCHAR;
- str[i-1]++;
- }
- }
- }
-
- return NULL;
-
- }
-
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define MINCHAR 33
#define MAXCHAR 126
char *bruteforce(int passlen, int *ntries);
int main(void) {
int i, wdlen, counter;
char *str;
clock_t start, end;
double elapsed;
do {
printf("Taille du mot(nombre de lettres)... ");
scanf("%d", &wdlen);
} while(wdlen<2);
start = clock();
bruteforce(wdlen, &counter);
end = clock();
elapsed = ((double) (end - start)) / CLOCKS_PER_SEC;
printf("\nNombres de mots... %d \n",counter);
printf("\nTemps ecoule... %f secondess\n",elapsed);
return counter;
}
char *bruteforce(int passlen, int *ntries) {
int i;
char *str;
*ntries=0;
passlen++;
str = (char*)malloc( passlen*sizeof(char) );
for(i=0; i<passlen; i++) {
str[i]=MINCHAR;
}
str[passlen]='\0';
while(str[0]<MINCHAR+1) {
for(i=MINCHAR; i<=MAXCHAR; i++) {
str[passlen-1]=i;
(*ntries)++;
puts(&str[1]);
}
if(str[passlen-1]>=MAXCHAR) {
str[passlen-1]=MINCHAR;
str[passlen-1-1]++;
}
for(i=passlen-1-1; i>=0; i--) {
if(str[i]>MAXCHAR) {
str[i]=MINCHAR;
str[i-1]++;
}
}
}
return NULL;
}