/* look for ways to break the cryptographic hash */ #define LEN 1000 static int iii; static int jjj; static int kkk; static int lll; static int mmm; static int nnn; static int ooo; #define OFF1 (iii) #define OFF2 (OFF1+jjj) #define OFF3 (OFF2+kkk) #define OFF4 (OFF3+lll) #define OFF5 (OFF4+mmm) #define GAP 3 #define VAR 4 #define LIMIT 30 /* we want LIMIT permutations */ #define MAX 80 #define CYCLE (GAP*4) int check(int x[LEN][VAR], int *a, int len) { int i; int on = LIMIT; int off = 0; int oldoff = 0; int oldon; int limit = LIMIT; for (i=0; i<=GAP*(a[len-1]+OFF3)+CYCLE; ++i) { int temp; int count = 0; int j, k; ++on; temp = (off < on) ? off : on; if (temp >= limit) return 0; for (j=0; j 1) { oldoff = off; off = temp; /* we can choose either way */ on = temp; /* we can choose either way */ } } if (off < limit) { if (len > 0) { printf("found a bad one %d %d\n ", oldoff, off); for (i=0; i