|
Message-ID: <20130108061159.GA23554@openwall.com> Date: Tue, 8 Jan 2013 10:11:59 +0400 From: Solar Designer <solar@...nwall.com> To: john-dev@...ts.openwall.com Subject: Re: faster fgets implementation by atom On Tue, Jan 08, 2013 at 10:48:12AM +0530, Dhiru Kholia wrote: > atom has released source code for a faster fgets implementation named > "fgets-sse2" (See https://hashcat.net/forum/thread-1912.html) > > Does it look like something we could re-use in JtR? I think we should rewrite/cleanup wordlist.c, and use our own large buffer there. Right now, we use a large buffer when the wordlist is loaded entirely into memory, but not for reads from a file when the wordlist does not fit in the memory buffer. And our code is dirty. Once we're properly using a buffer of our own in both cases, it's a separate question whether we also add SIMD code for locating the '\n' or/and use memchr() (and hope that it has SIMD code in it?) We should also add a mode where rules are iterated for each word (rather than the other way around, like it's done now). This will reduce the number of wordlist reads. Finally, there are some uses of fgets() other than in wordlist mode - for reading of password files, in the unique program. I doubt we care about optimizing these much, although we could. As to atom's specific implementation, we could use it. I'd be happier if it were under a more relaxed license than GPLv2+, though - but GPLv2+ is the minimum that is acceptable for jumbo. 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.