Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Fri, 17 Aug 2012 17:28:35 +0400
From: Solar Designer <solar@...nwall.com>
To: john-dev@...ts.openwall.com
Subject: Re: Result of hard core password generation on 7970

myrice -

On Wed, Aug 15, 2012 at 12:23:38AM +0800, myrice wrote:
> Sorry for late replay. It is on the github now. I implement 4 bitmaps
> but on global memory, it is still 16MB for each bitmaps. I will
> enlarge it later. Currently I use 4*8KB = 32KB local memory for
> bitmaps. I find performance decrease in 4 bitmaps case. It may due to
> more work(compute for bitmaps) in kernel. But for hashes in local
> memory case, it really need optimization. Here is the result:
> 
> 1:
> guesses: 0  time: 0:00:01:36 0.00%  c/s: 1752M
> 
> 1000:
> guesses: 0  time: 0:00:01:40 0.00%  c/s: 1682G

Attached is a patch with some optimizations and bugfixes to your PG-test
experimental code.  It is still very far from optimal and very dirty,
but I wanted to see what some trivial optimizations would result in.
With this, I am getting speeds of up to 2.7 billion passwords/second on
the 7970 when running against
cmiyc_2012_password_hash_files/hashes-9.raw-md5.txt.  However, on many
invocations the speed is substantially lower (and it stays low until I
stop, do another run with different settings or against a different
file, and then try again).  The range is roughly 0.8 to 2.7 billion.
I don't know why the discrepancy.  It could be differences in where
things are located in GPU memory (although I don't see why this would
differ from run to run), or it could be some uninitialized variable on
the GPU side affecting what's being done (although both the slower and
the faster runs pass my tests fine, getting the same passwords cracked).

Anyhow, I think you'll need to approach this task for real: write new
and cleaner code (both CPU and GPU), implement set_mask(), implement
mask mode, move some MD5 steps out of the loop and reverse some others
(and ditto for other fast hashes of similar structure when you approach
those).

Alexander

View attachment "john-PG-test-opencl-rawmd5-opt2.diff" of type "text/plain" (14382 bytes)

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.