Date: Mon, 19 Oct 2015 23:40:12 +0200 From: magnum <john.magnum@...hmail.com> To: john-dev@...ts.openwall.com Subject: Re: db built from test vectors On 2015-10-19 22:40, Solar Designer wrote: > On Mon, Oct 19, 2015 at 12:57:10AM +0200, magnum wrote: >> Since July, we always pass the real db to reset() if we have one. This >> was added for Agnieszka. With the above we could pass the fake db when >> we don't have any db. I guess we also need to pass db->salts in all >> crypt_all() calls - or perhaps only in benchmark. If we do so in >> self-test before a real crack run, we probably need to reset(fake db) >> before self-tests and reset(real db) after it. But that may collide with >> Agnieszka's needs, I'm not sure. > > This would be a change to how the formats interface is defined, as IIRC > it would go against what the comments in formats.h currently say. I think it wouldn't: Both for reset() and crypt_all(), it says "may" be NULL before self-test or benchmark. Though if we end up always passing a "fake db" before self-test, we should definitely say so for clarity. >> Perhaps we should not change test/benchmark at all but instead use this >> feature in format code as needed. Sayantan's formats could set a >> format-global pointer to fake_db in reset(), and when crypt_all is >> called with a NULL salt, we can use fake_db->salt instead. > > This might be a hack, but it does appear to avoid changing the formats > interface definition. We'll probably start with format-local hacks first anyway, and see how ugly it gets. I'll report or revisit this issue later as needed. On a related note we now support "-test -mask" which results in a mask mode benchmark. It doesn't yet work for descrypt-opencl or lm-opencl but it works fine for most (maybe all) others. If you specify a mask (including a hybrid one) you will see how such a mask (eg. a short -mask:?d) will perform. This "fake db" thing will make it easier to proceed, and eventually we should end up also self-testing with GPU-side mask active where needed. Right now, "-test -mask" implies "-skip-self-test" and real-crack runs with GPU-side mask will self-test without it (possibly letting bugs slip through). Thanks, magnum
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.