Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Sun, 24 Jun 2012 11:32:25 +0400
From: Solar Designer <solar@...nwall.com>
To: musl@...ts.openwall.com
Subject: Re: FreeSec crypt()

On Sun, Jun 24, 2012 at 11:21:12AM +0400, Solar Designer wrote:
> struct _crypt_extended_shared {
> 	uint32_t psbox[8][64];
> 	uint32_t ip_maskl[16][16], ip_maskr[16][16];
> 	uint32_t fp_maskl[8][16], fp_maskr[8][16];
> 	uint32_t key_perm_maskl[8][16], key_perm_maskr[12][16];
> 	uint32_t comp_maskl0[4][8], comp_maskr0[4][8];
> 	uint32_t comp_maskl1[4][16], comp_maskr1[4][16];
> };

Actually, we should re-order the first two lines.  That is make it:

struct _crypt_extended_shared {
	uint32_t ip_maskl[16][16], ip_maskr[16][16];
	uint32_t psbox[8][64];
	uint32_t fp_maskl[8][16], fp_maskr[8][16];
	uint32_t key_perm_maskl[8][16], key_perm_maskr[12][16];
	uint32_t comp_maskl0[4][8], comp_maskr0[4][8];
	uint32_t comp_maskl1[4][16], comp_maskr1[4][16];
};

That's because IP is not always used (it's only used for "new"-style
hashes, not for "old"-style ones where the initial block is always 0
and thus IP is skipped).  When it is used, it's used right before
psbox[] is.

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.