Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Wed, 6 Sep 2006 17:29:37 +0400
From: Solar Designer <>
Subject: Re: fast MD5 for long passwords?

On Mon, Sep 04, 2006 at 06:51:21PM +0100, Sam wrote:
> I need a fast MD5 engine that will hash arbitrary length passwords. I 
> have looked at the MMX/SSE2 code in the latest John but I think it only 
> handles <=32 byte strings. Can anyone suggest how to modify this to 
> handle longer strings?  (is that what the mdfivemmx_noinit_sizeupdate, 
> mdfivemmx_noinit_uniformsizeupdate and mdfivemmx_nosizeupdate functions 
> are for?)

As Simon has pointed out, there's no MMX/SSE2-enhanced MD5 code in the
latest JtR; the implementation you're referring to is a part of Simon's
unofficial patches.

As it relates to cracking "passwords" of more than 32 characters long,
you're most likely out of luck - unless you have prior knowledge about
the passwords (e.g., you know most of the characters and only need to
recover a few forgotten ones).  With "password" lengths like this, it
also doesn't matter much whether your MD5 implementation is optimized or
not.  The use of SSE2 might make things, say, 2-4 times faster - whereas
each additional unknown character increases the search time by at least
the same factor.

> Or does anyone know of a stand alone library that will do the same?

OpenSSL includes a fairly optimal but non-parallelized generic MD5
implementation, or you can find one here:

P.S. For those who e-mail private stuff to me - I've got a new GnuPG key
since the old one is due to expire soon.  The new key is available off  It's signed with the old key, as well as with the Openwall
signatures key as available off the website.

Alexander Peslyak <solar at>
GPG key ID: 5B341F15  fp: B3FB 63F4 D7A3 BCCC 6F6E  FC55 A2FC 027C 5B34 1F15 - bringing security into open computing environments

Was I helpful?  Please give your feedback here:

To unsubscribe, e-mail 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.