Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date: Tue, 29 Oct 2013 18:23:34 +0400
From: Solar Designer <>
Subject: descrypt-opencl "section 0" fix

Sayantan, magnum -

descrypt-opencl was failing to crack some of the hashes the correct
candidate passwords for which appeared in indices 0 to 31.  In a test
using pw-fake-unix and password.lst, 17 passwords among the first 32
were not cracked.  All of these 17 had unique salts - that is, there
were no other loaded hashes with the same salts.  Then I came up with a
simpler test case, using this one hash:


(corresponds to 123456) and a wordlist containing repeats of these two


With up to 32 lines (16 repetitions) in the wordlist file, the password
was not cracked.  With 33 lines (one 123456 added to the end of the
file), the password was cracked.

A section 0 cracked password initially results in cmp_out[i] = 1, but
after cmp_out[i]-- this turns into 0, so max stays at 0 and the
successful guess is not detected.

The attached patch attempts to and appears to correct this.  At least my
tests pass now.  Note that while I am patching both instances of the
code, I think I have tested only one of them.


View attachment "john-descrypt-opencl-section0-fix.diff" of type "text/plain" (2084 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.