Unlimited incremental mode for John
As john's --incremental mode supports only words up to 8 characters long, I spent some time and wrote this external mode, with no word length limit, no character set limit etc.
Restore support, so safe to run for months. How to use - copypaste this piece of code into john.conf, run as --external=realcrack. It is convenient to copy it 3-4 times, each time with different length, to run as --external=realcrack-10, --external=realcrack-11 etc.
[List.External:realcrack]
int l;int i;int t;int s;int e;
int w[10];//-----length
void init( ) {
l=10;//------length
s=65;//------start
e=126;//-----end
i=0;
while( i<l ) {
w[i]=s;i++;
}
w[i++]=0;i=0;
}
void generate( ) {
w[0]=w[0]+1;
while( i<l ) {
if( w[i]>=e ) {
w[i]=s;w[i+1]=w[i+1]+1;
}
word[i]=w[i];i++;
}
word[i++]=0;i=0;
}
void restore( ) {
while( i<l ) {
w[i]=word[i];i++;
}
w[i++]=0;i=0;
}
Use for evil purposes only!