Date: Tue, 5 Jul 2011 17:57:33 -0500 From: "JFoug" <jfoug@....net> To: <john-dev@...ts.openwall.com> Subject: Improved MSCash2 released This version of DCC2 (mscash2) has now been released. Magnum, myself and bartavelle all played a roll in this update. It now is running 3x to 12x faster than before, depending upon compiler and CPU being run on. Items of interst: 1. bug fixed in bench.c (was not calling prepare). 2. Rewote the core caching in cash2 format, drastically simplifying. 3. Removed inline crypt code (MD4/SHA1), and replaced with OpenSSL context code. 4. Reduced 1/2 of the encryption in the 'core' inner loop. 20480 SHA1 crypt calls removed per password check. 5. Changed the signature of the format from M$salt#hash to $DCC2$iterations#salt#hash Thus, the iterations are now 'variable' and not fixed at 10240 (in case M$ kicks this up in newer versions). 6. Simpilfied the -utf8 handling in the format. 7. Added SSE2 (both .S 32 bit and intrisic) support. This is hooked into the deep inner loop only. 8. Added OMP support, even for SSE2. This is likely the first time OMP and SSE2 have been used at the same time in a format. At this time, only intrisic SSE supports OMP. The asm code uses globals, and thus will not work multi threaded as it stands. The code properly compile in (or out) the OMP code depending upon the SSE2 'flavor'. 9. The SSE2i and .S SSE2 interfaces were changed to help reduce redundant memory copying within this format. Thus, a few format changes were made to other SHA1 formats, so that they stay compatibible with this new interface. 10. Some additions have been added to the memory debugging functions. 11. a little change needed to be done to the md5.h (so that proper 'USE_OPENSSL' mode would work correctly). 12. the 'original' mscash2 has been moved to the ./src/unused directory. A OMP build from ICC will now likely push 1600 on a 2 core system, or even up to 3200 or more on a 4 core. NOTE, the patch file on the wiki, http://openwall.info/wiki/john/patches is based against the john-1.7.8-jumbo-2-plugin format That tarball is also found on the same wiki page. At this time, the 'official' jumbo-2 is not a plugin build. So to install this patch, first untar the jumbo-2-plugin from the wiki, then patch with this performance-cash2 patch. Jim.
Powered by blists - more mailing lists