From: "Jason A. Donenfeld" Subject: Re: [PATCH v3 1/3] siphash: add cryptographically secure hashtable function Date: Wed, 14 Dec 2016 21:55:51 +0100 Message-ID: References: <20161214035927.30004-1-Jason@zx2c4.com> <20161214184605.24006-1-Jason@zx2c4.com> Reply-To: kernel-hardening@lists.openwall.com Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Cc: Netdev , kernel-hardening@lists.openwall.com, LKML , Linux Crypto Mailing List , Jean-Philippe Aumasson , "Daniel J . Bernstein" , Linus Torvalds , Eric Biggers , David Laight To: Tom Herbert Return-path: List-Post: List-Help: List-Unsubscribe: List-Subscribe: In-Reply-To: List-Id: linux-crypto.vger.kernel.org Hey Tom, Just following up on what I mentioned in my last email... On Wed, Dec 14, 2016 at 8:35 PM, Jason A. Donenfeld wrote: > I think your suggestion for (2) will contribute to further > optimizations for (1). In v2, I had another patch in there adding > siphash_1word, siphash_2words, etc, like jhash, but I implemented it > by taking u32 variables and then just concatenating these into a > buffer and passing them to the main siphash function. I removed it > from v3 because I thought that these kind of missed the whole point. > In particular: > > a) siphash24_1word, siphash24_2words, siphash24_3words, etc should > take u64, not u32, since that's what siphash operates on natively I implemented these here: https://git.zx2c4.com/linux-dev/commit/?h=siphash&id=4652b6f3643bdba217e2194d89661348bbac48a0 This will be part of the next version of the series I submit. It's not immediately clear that using it is strictly faster than the struct trick though. However, I'm not yet sure why this would be. Jason