Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Thu, 5 May 2011 20:29:23 -0500
From: "JimF" <>
To: <>
Subject: Re: Following all the patch activity, not uploading to the wiki, which patches play well together, revising the wiki page to be better

-- Original Message -- From: "Solar Designer" <> Sent: 
Thursday, May 05, 2011 3:56 PM
> 2. I should work on integrating the recently submitted patches into
> -jumbo, etc.  This includes some patches submitted before the 1.7.7
> release, which I did not merge into 1.7.7-jumbo-1 because I wanted that
> release to stay somewhat stable.

If one of these 'not included', is the recent changes to the 'generic' 
(md5_gen), and the format changes (along with bench/format/loader), then 
hold up a little.  I have been working hard on it.  I have got these things. 
Many of these items were in the 1.7.6 patch.  Many have been added since 
that patch.

New formats:

md5_gen(18) | PostOffice MD5 (PO)
md5_gen(19) | Cisco PIX
md5_gen(20) | Cisco PIX (salted)
md5_gen(21) | HTTP Digest Access Auth
md5_gen(22) | md5(sha1($p))
md5_gen(23) | sha1(md5($p))
md5_gen(24) | sha1($p.$s)
md5_gen(25) | sha1($s.$p)
md5_gen(26) | sha1-raw
md5_gen(27) | OpenBSD MD5  (SSE working but SSE-para has not been added to 
these 2 formats yet)
md5_gen(28) | Apache MD5

Significant changes to code in the md5_gen. I now try to use the 'md5_body' 
code, both the MD5_X2 and 'single', depending upon is listed in arch.h 
NOTE to do this, I had to expose some functions within md5_std.c (they were 
static).  Also, I had to call the init function, for MD5_IMM builds (that 
issue mad me pull my hair out for a while).  This was a big change, but 
makes a big difference.

md5_gen is now working/tested with big-endian systems (only a X2 actually 
built and tested).  However, all changes should work on an X1 build.  There 
were numerous changes needed to get many of the formats working. Also, many 
of the better optimizations had to be done differently, so as to not have to 
call swap functions all over the place.

The format structure has been changed.  All format files have been updated. 
New method is 'prepare'.  Also, the init and valid take a pointer to the 
format structure being used.

The md5 gen (from the interface john sees, the format structure), is now a 
'normal' format, and not a format that morphs itself.  Thus when john loads 
the md5_gen, it will

I have (again) gotten loader code updated (with the core changes).  NOTE , 
there is one section I am not sure of.  That section is the code that fixes 
a 'bugus' salt, or something like that.

All 'special' code for md5_gen format has been removed from bench.c and 

All 'special' loader code for formats has been removed from loader.c.  It is 
now contained within the prepare function of the *_fmt.c files.

Changes made to md5-mmx.S and sha1-mmx.S (and the header files), to get 
SSE2/MMX code working for VC builds.  To do this, you still have to build 
with MinGW (to build the .S files, into .o files).  The main changes are 
additions of marshal functions usable by VC to properly setup the stack and 
registers, prior to jumping to the 'real' functions. All of this code is 
properly #defined, so it will not impact any other build at all.

All the changes have been properly updated into the 1.7.7 jumbo1 code base. 
I am still checking the patch file, to make sure everything appears 'ok'.

There were other changes.  I will list all when I get a patch file done.


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.