|
|
Message-ID: <4F1B0D3F.1010508@hushmail.com>
Date: Sat, 21 Jan 2012 20:08:47 +0100
From: magnum <john.magnum@...hmail.com>
To: john-dev@...ts.openwall.com
Subject: Re: dropping *_hash_0()
On 01/21/2012 07:40 PM, Solar Designer wrote:
...
> Thus, I propose that we drop 4-bit and add 29-bit hash values (for
> bitmaps; this corresponds to 27-bit for hash tables). The maximum hash
> table size will then remain at 1 GB (per salt), although the
> corresponding threshold would be higher than we'd set it for direct hash
> tables (without bitmaps).
>
> (29 also happens to be the number of significant bits in the first
> 32-bit half of binary tripcodes with the current code.)
>
> This lets us reuse the same sets of 7 hash function pointers that we
> already have. They will correspond to these return value sizes:
>
> 8, 12, 16, 20, 24, 27, 29
>
> I propose that we don't rename any functions. Simply drop *_0() and add
> *_7(), so the new numbering will start with 1 (although array indices
> obviously start at 0). Similarly, drop PASSWORD_HASH_SIZE_0 and
> PASSWORD_HASH_THRESHOLD_0, and add PASSWORD_HASH_SIZE_7 and
> PASSWORD_HASH_THRESHOLD_7 in params.h.
>
> Any comments?
Sounds reasonable. But could we not have just one hash function, with an
added parameter for bit size? Like this
static int get_hash(int index, int bits)
{
return crypt_key[index] & ((1<<bits)-1);
}
...and any format that need to take measures depending on size can do
that. I'm just brainstorming here: Perhaps this would be very bad for
bitslice formats, no matter how we do it?
> If a format is not updated, it will end up wasting memory. To deal with
> this, we may introduce a new FMT_* flag that will indicate the use of
> the new sizes - but this flag will soon be set on all formats. Do we
> need this complexity?
No, let's just fix all formats at once. However, if my idea above is
usable (in some form), it might be sensible to add a flag telling the
max size that the hash functions can return (for most formats it will be
the 32)
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.