|
|
Message-ID: <20080306145052.GA6083@openwall.com>
Date: Thu, 6 Mar 2008 17:50:52 +0300
From: Solar Designer <solar@...nwall.com>
To: john-users@...ts.openwall.com
Subject: Re: Password to guess with a lot of information
I suggested:
> > 2. Define and use "incremental" for the first 7 characters (does not
> > require a recompile, nor a custom .chr file). Define and use an
> > external filter() that will modify "word" by adding two digits to it.
> > You'd have to do up to 100 invocations of JtR with different filter()
> > functions - separately for each two-digit combination.
On Thu, Mar 06, 2008 at 09:05:58AM +0100, L B wrote:
> I haven't tried your 1), but I tried 2) with a simple scenario of adding 00
> at the end of my 7 characters long word, with filter_alnum as an example :
>
> [Incremental:mypass]
> File = $JOHN/alpha.chr
> MinLen = 7
> MaxLen = 7
> CharCount = 26
This looks fine. Didn't you previously mention that your first 7
characters are alpha-numeric, though?
> [List.External:Filter_mypass]
> void generate()
> {
> word[7] = '0';
> word[8] = '0';
> word[9] = 0;
> }
This is wrong. generate() is only called when the external mode is used
on its own, not along with another mode.
> void filter()
> {
> int i, c;
>
> i = 0;
> while (c = word[i++])
> if (c < 'a' || c > 'z') {
> word = 0; return;
> }
> }
This is also wrong, in two ways. When the external mode is used on its
own, filter() is called after generate() - which, in your case, would
cause your desired alpha-numeric passwords to be filtered out, because
the above filter() permits pure-alphabetic passwords only. And when you
use an external mode along with "incremental" mode as I have suggested,
you do not need to really filter anything out - because the
"incremental" mode will only generate the desired strings for the first
7 character positions.
> But it doesn't work. If you have any pointers, they are welcome !
Indeed. Here's an example:
[List.External:7plus00]
void filter()
{
word[7] = '0';
word[8] = '0';
word[9] = 0;
}
In this special case, it can be optimized to:
[List.External:7plus00-opt]
void init()
{
word[9] = 0;
}
void filter()
{
word[8] = word[7] = '0';
}
Alexander
--
To unsubscribe, e-mail john-users-unsubscribe@...ts.openwall.com and reply
to the automated confirmation request that will be sent to you.
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.