Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20120325002616.GC8416@openwall.com>
Date: Sun, 25 Mar 2012 04:26:16 +0400
From: Solar Designer <solar@...nwall.com>
To: john-dev@...ts.openwall.com
Subject: bcrypt on GPU (was: Research ideas.)

On Sat, Mar 24, 2012 at 09:42:10AM -0600, RB wrote:
> On Fri, Mar 23, 2012 at 18:54, Solar Designer <solar@...nwall.com> wrote:
> > It is currently believed that Blowfish can't be implemented on current
> > GPUs efficiently.  That said, if Lukas or anyone manages to disprove
> > this, that would be even more valuable as it may affect the design of
> > future KDFs.
> 
> Even if inefficient, surely it could be faster?

Maybe, but this is non-obvious.

BTW, implementing bcrypt on GPU is an excellent task for brave GSoC
students to experiment with before we have to decide on who to accept.
Chances for success are relatively low (compared to other hash/cipher
types), but if a person does succeed, that may mean a lot.  By "success"
I mean outperforming the current CPU implementation in JtR by some
margin - e.g., achieving at least 10000 c/s at "$2a$05" on a single GPU
chip, which is currently only achieved on some dual-CPU-socket systems.
10000+ c/s on GPU will need to be demonstrated by April 10 or so
(preferably in the form of a working JtR format).  I think this is a
realistic goal (less than twice faster over a single CPU chip), although
we'd obviously want to improve upon it further (if at all possible).
In practice, it would still make sense to use GPUs for other hash types
instead (where the advantage is bigger) if multiple hash types need to
be attacked at once (like in a contest setting).

For reference, some current results at bcrypt:

4x X7560 2.27 GHz (64 threads, 32 cores) - 23808 c/s
2x X5690 3.47 GHz (24 threads, 12 cores) - 14112 c/s
2x X5650 2.67 GHz (24 threads, 12 cores) - 10800 c/s
2x X5550 2.67 GHz (16 threads, 8 cores) - 7626 c/s
FX-8120 o/c 3.9 GHz (8 threads, 4 modules) - 5644 c/s
FX-8120 3.1/3.4 GHz (8 threads, 4 modules) - 5347 c/s
Core i7-2600K 3.4/3.5 GHz (8 threads, 4 cores) - 4800 c/s
Q8400 o/c 3.4 GHz (4 threads, 4 cores) - 3730 c/s
Q8400 2.66 GHz (4 threads, 4 cores) - 2952 c/s

http://openwall.info/wiki/john/benchmarks

Alexander

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.