[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Thu, 5 Nov 2009 19:30:52 -0600
From: "JFoug" <jfoug@....net>
To: <john-users@...ts.openwall.com>
Subject: Re: tutorials on the wiki
> I've just reclaimed the "tutorials" page/section on the wiki for its
> original intended use, moving Pete's misplaced content to "development".
>
> The tutorials page is at:
>
> http://openwall.info/wiki/john/tutorials
I will get an advanced howto tutorial put together on how to build a 'new'
generic md5 formats, into the john.conf. Would you want this as native
wiki pages, or as downloadable data?
I figure for this, I will need to:
1. Explain the data structures within the generic environment. Data such as
input buffers, crypt 'output' buffers, salt buffers (yes, I do have salt2
working), constants buffers (I have added ability to have up to 8
'constants), count of passwords, the passwords themselves, etc.
2. Explain the layout of the script within john.conf
3. Explain the 'flags' which are the characterstics of the format.
4. Describe the functions. Also describe how the function script is run,
just a simple walk down a list of functions.
5. Explain the 'flags' which are special optimization flags. Explain the
side effects, and show scripts written with and without them. Most of the
optimization flags allow us to reduce the number of crypts, to eliminate
certain steps at startup, etc. Explain a little of the guts of how john
works (enough to explain how and why certain things can be sped up, with
precomputations). Information of this type, is knowledeg that john sets all
of the passwords (128 for generic md5), and then simply tries salts one a
time, then sets each salt and calls crypt_all, then testing. Also, that how
loading of the hashes, and salts is done, and what information about the
salts is used within john, and how it can be manipulated for speed gain.
This knowledge of the underbelly of john is required for most of the
optimizations (as it is with doing most any format).
6. Go through several examples. From simple ones, to some more complex, to
some complex where they can be done in multiple ways, such as with some of
the optimization functions.
Jim.
Powered by blists - more mailing lists
Powered by Openwall GNU/*/Linux -
Powered by OpenVZ