|
|
Message-ID: <607feec72e8f08edf61ff2cf62ad564a@smtp.hushmail.com>
Date: Sun, 05 Jul 2015 01:42:41 +0200
From: magnum <john.magnum@...hmail.com>
To: john-dev@...ts.openwall.com
Subject: Re: PHC: Lyra2 on GPU
On 2015-07-04 19:37, Solar Designer wrote:
> On Sat, Jul 04, 2015 at 07:26:01PM +0200, Agnieszka Bielec wrote:
>> 2015-07-04 19:19 GMT+02:00 Solar Designer <solar@...nwall.com>:
>>> Maybe the auto-tuning could be done only once, only in reset()?
>>
>> it's only in reset but first reset is called for correctness tests and
>> after that is called before real password cracking
>
> Oh. This is wasteful, but it makes sense.
>
> Ideally, we'd auto-tune for the actual loaded hashes, yet also run
> self-test with those settings (even if suboptimal for the self-test).
> But I think there's no easy way to do that currently.
Something like this perhaps?
void reset(struct db_main *db)
{
static int tuned_already;
if (db || (options.flags & FLG_TEST_SET)) {
/* look at db for costs, then autotune here */
tuned_already = 1;
}
else if (!tuned_already) {
/* set a fixed low LWS & GWS here */
}
}
So if we're running --test, we'll auto-tune at first call to reset() and
not re-tune at second call.
If running an actual crack, we'll self-test with some low LWS/GWS (eg.
8/64) and then once we get a db (which we can look at to see costs)
we'll auto-tune for actual costs.
It would be slightly safer to self-test using the actual LWS/GWS that
will be used later, but iirc this can't be done without changing core.
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.