Government Security
Network Security Resources

Jump to content

Photo

CUDA Mysql/Sha1 Cracker

- - - - - sql mysql
  • Please log in to reply
58 replies to this topic

#1 vampyr

vampyr

    Private First Class

  • Members
  • 41 posts

Posted 28 March 2009 - 12:35 PM

--content removed--

#2 vampyr

vampyr

    Private First Class

  • Members
  • 41 posts

Posted 29 March 2009 - 03:42 AM

Updated. Whoever is using this, download it again:P

#3 Guest_DiabloHorn_*

Guest_DiabloHorn_*
  • Guests

Posted 30 March 2009 - 02:23 AM

that's indeed a lot faster then the one posted @ http://blog.distracted.nl/.

Maybe you could combine? so when cracking a hash it can use cpu and gpu? instead of gpu only?

#4 vampyr

vampyr

    Private First Class

  • Members
  • 41 posts

Posted 30 March 2009 - 03:44 AM

that's indeed a lot faster then the one posted @ http://blog.distracted.nl/.

Maybe you could combine? so when cracking a hash it can use cpu and gpu? instead of gpu only?


Thats what i was working on, i'm a little bit short on time atm.

I'll have to get my damn university's coursework finished first, after that i'll try to add, and in this order: cpu support (Intel), GPU support(ATI), Multi GPU support(Nvidia).

Atm i've ordered a second graphics card for my nvidia rig, and i'll be needing an ati card soon.

Once the sha1 part is done i might have time to add p2p features, or md5 cracking.

#5 vampyr

vampyr

    Private First Class

  • Members
  • 41 posts

Posted 30 March 2009 - 03:53 AM

Also, in favor of supporting MYSQL hashes, i will actually add a full length (55 chars) sha1 SSE2 implementation. (mysql hash = sha1(sha1()), so this requires the ability to hash a 20 byte buffer).

#6 vampyr

vampyr

    Private First Class

  • Members
  • 41 posts

Posted 02 April 2009 - 10:40 AM

Progress update: new GPU's arrived today. Nvidia multi gpu support will probably be done tomorrow.
Ati gpu support most likely this weekend, including multi gpu support. After that the p2p architecture will be done. (need hosting! Not hosting this on my home conn.)
After that i'll add CPU support.

#7 Guest_DiabloHorn_*

Guest_DiabloHorn_*
  • Guests

Posted 02 April 2009 - 11:24 PM

After looking into this and comparing it to the blog I posted it seems that this isn't as fast as I thought it would be.

Are you going to iimprove current code to be more efficient?

#8 vampyr

vampyr

    Private First Class

  • Members
  • 41 posts

Posted 03 April 2009 - 12:41 AM

Yep, however there are a few performance limits on this.
The hard limit so far, on hashes/second is 80mln on a gforce 8800gts 320. That is given that the passes are <12 characters.
I know i'm hitting a memory limit somewhere, it might be that all the DATA##num structures arent properly cached in registers.
Also, please note that this app compares up to 128 hashes simultaneously. And i'm NOT giving that up in favor of single hash speed. I might write a signle hash benchmarking version to see how high i can go tomorrow, but atm i have _NO_ clue what is limiting performance.
Plus that there's no proper dissasemblers for gpu code, which doesn't really help.

The bottleneck (might) be that the GPU is paging DWORDS for each round in and out of shared memory, from global memory. Shared memory is fast (4 cycles), global is slow(400 cycles). Also: using the approach for the CPU from that blog post on the GPU would kill performance. Why? Using an array: -34% performance (PAGING!), using loops -8% performance (OVERHEAD!).

So, any tools to measure paging in and out of memory on the GPU would be useful. Any links/articles too. But i might just be hitting an instruction limit, and that'd make it a dead end.

As you might be able to read from above post, im just guessing, and cant see to it untill i get home.

#9 vampyr

vampyr

    Private First Class

  • Members
  • 41 posts

Posted 03 April 2009 - 11:17 AM

I might have found a bottleneck, the amounth of threads is not ideal for slow cards, and might not be ideal for fast cards either (designed on an 8800 gts, remember), try dicking around with the threads value till it speeds up.

#10 nbe

nbe

    Private

  • Members
  • 1 posts

Posted 03 April 2009 - 01:08 PM

hi there, nice work and tnx for sharing code :)
i had a short look at your code... sha1 looks alright, but did i see correctly that you are generating plaintexts constantly using integer divisions? if so, that might actually kill your performance.

#11 vampyr

vampyr

    Private First Class

  • Members
  • 41 posts

Posted 04 April 2009 - 01:01 AM

hi there, nice work and tnx for sharing code :)
i had a short look at your code... sha1 looks alright, but did i see correctly that you are generating plaintexts constantly using integer divisions? if so, that might actually kill your performance.


Benchmarked that, thats only responsible for killing 7% of my performance. branching if-statements in a loop do worse than this. But thnx for the heads up. I'm going to put a reworked version online today, so i'm busy optimizing it all out of it atm.

As far as i know, this way of generating plaintext uses the least amounth of asm instructions, but i might be wrong, so got ideas for code that suits a similar purpose?:P

#12 vampyr

vampyr

    Private First Class

  • Members
  • 41 posts

Posted 04 April 2009 - 01:03 AM

Also, the problem that DiabloHorn has is most likely with the amounth of threads/the amounth of hashes per thread, or he just has a SLOOOW gpu (remember kids, 8400 cards only have 16 shaders, 8600 too. their 6* slower than a 8800 gts (recommendation: buy an el cheapo second hand 8800 gts instead of them)).

Edit: Compile error, left bracket at line 2 was not matched in post.htm

#13 vampyr

vampyr

    Private First Class

  • Members
  • 41 posts

Posted 04 April 2009 - 09:58 AM

Multi GPU support added for NVIDIA. Updated + optimized. Going to continue on ATI support now.

#14 vampyr

vampyr

    Private First Class

  • Members
  • 41 posts

Posted 25 May 2009 - 01:50 AM

Bump for updated + FIRST CRACKER TO SUPPORT MSSQL AND ATI :)

#15 vampyr

vampyr

    Private First Class

  • Members
  • 41 posts

Posted 25 May 2009 - 03:52 AM

Fixed a bug in the NVIDIA kernel, thanks to budden for reporting it:P





Also tagged with one or more of these keywords: sql, mysql