Openwall Project   /home  Owl  JtR  Pro  crypt  pam_passwdqc  tcb  phpass  scanlogd  popa3d  msulogin  /  Linux  BIND  /  advisories  presentations  /  services  donations  /  wordlists  passwords  /  news  community  lists  wiki  CVSweb  mirrors  signatures
bringing security into open environments
 
Password Recovery Resources on the Net
[<prev] [next>] [<thread-prev] [thread-next>] [month] [year] [list]
Date: Tue, 23 Sep 2008 20:46:55 +0200
From: Simon Marechal <simon@...quise.net>
To: john-users@...ts.openwall.com
Subject: Re: quite fast MD5 hashing implementation

Simon Marechal wrote:
> http://3.14.by/en/md5
> 
> It is a lot faster than everything I previously saw. I suppose he 
> achieves this speed by:
> * reversing the last round
> * working a lot on instruction/register scheduling
> 
> Are there more clues on the russian part of the site?

I had a very quick response from the author. He indeed uses the 
reversing trick, and uses SSE intrinsics + ICC. It seems that what he 
did has been very polished, as a naive test from me, reproducing his 
techniques, only achieved 12M pwd/s on a single core while he achieves 15M.

PS: for those who don't know what the reversing trick is, it has been 
discussed on this ML and can be seen in Alain Espinosa's NT patch 
(present in jumbo patch).

PPS: compiling john with ICC can yield to nice speedups on some hashes, 
such as the NT cipher. I suppose that generating "generic" assembly code 
might now be done by just using ICC : the register and instruction 
scheduling might be closer to optimal than what a human could achieve. 
While I was aware that the SSE implementation I wrote was naive and not 
optimal, I didn't believe it sucked so much :)

-- 
To unsubscribe, e-mail john-users-unsubscribe@...ts.openwall.com and reply
to the automated confirmation request that will be sent to you.

Hosted by DataForce ISP - Powered by Openwall GNU/*/Linux