Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date: Sat, 13 Feb 2016 22:17:27 +0100
From: magnum <john.magnum@...hmail.com>
To: john-dev@...ts.openwall.com
Subject: Re: Doing raw SHA512 hashes (moved here from john-users)

On 2016-02-13 21:34, Frank Wang wrote:
> Sorry about that. opencl_office2013_fmt_plug.c has a bunch of functions but
> no "main" function as far as I can see. What file calls the functions
> in opencl_office2013_fmt_plug.c to do the cracking? I'm mainly wondering
> this because I want to make sure that I'm using the kernel in the right way
> to get the optimizations that John the Ripper has done.

Ah, OK. Well that's a long story. main() is in john.c. It will load 
hashes (loader.c), and run a mode (eg. inc.c) which calls functions in 
cracker.c. All this is "core code" used for any format.

In short, the "core" of JtR will first call set_key() "n" times with 
candidates. Then crypt_all(n) is called, to try those candadates. 
Finally, the cmp_*() functions will be called to check if anything was 
cracked.

magnum

> On Sat, Feb 13, 2016 at 2:59 PM, magnum <john.magnum@...hmail.com> wrote:
>
>> On 2016-02-13 17:45, Frank Wang wrote:
>>
>>> Awesome, thanks magnum! I know the opencl_*.c files call the kernels you
>>> mentioned, but what files actually run the functions in the opencl_*.c
>>> files?
>>>
>>
>> I don't understand what you mean. The opencl_*.h are headers #include'd by
>> the kernels. The format calls the kernel. One such format is
>> opencl_office2013_fmt_plug.c.
>>
>> magnun
>>
>>
>> My goal is write an implementation of just raw SHA256/SHA512 hashes using
>>> openCL.
>>>
>>> Frank
>>>
>>> On Thu, Feb 4, 2016 at 1:54 AM, magnum <john.magnum@...hmail.com> wrote:
>>>
>>> On 2016-02-03 21:39, magnum wrote:
>>>>
>>>> On 2016-02-02 23:49, Frank Wang wrote:
>>>>>
>>>>> I am trying to run about 10 million raw SHA 512 hashes in my program and
>>>>>> offloading it to a GPU will make it substantially faster. It seems like
>>>>>> John the Ripper has this functionality, but it seems to be intertwined
>>>>>> with
>>>>>> the password cracking capabilities. Are there any SHA 512 OpenCL
>>>>>> implementations that are easy to separate and integrate into my
>>>>>> program?
>>>>>> Possibly that already exist in John the Ripper?
>>>>>>
>>>>>>
>>>>> I would think so. Our current GitHub code contains (among other
>>>>> implementations) generic SHA512 macros in src/opencl_sha512.h which is
>>>>>
>>>>>
>>>> Sorry, that should be opencl_sha2.h. The other file is an other
>>>> implementation that I'm not well acquainted with.
>>>>
>>>> magnum
>>>>
>>>>
>>>>
>>>
>>
>

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.