Commit ID:      10052D168AB69B928FD
CVSROOT:        /cvs
Module name:    src
Changes by:     [email protected]    2014/01/11 15:59:42 UTC

Modified files:
        kern/include   : Makefile
Added files:
        kern/include   : mirhash.h

Log message:
add BAFH: Better Avalanche for the Jenkins hash

This uses NZAAT Init and Update, and AES MixColumns for Finish.
For hashtables this will need XOR with uint32_t then rotation
with uint5_t (so a total of 37 bit of entropy) for mitigation.
For entropy avalanche this needs mixing, and better handling
of the IV and/or the first four bytes, see BAFHHost* macros.

Thanks to Bob Jenkins for the one-at-a-time hash, Bret Mulvey for
the Hash.cs AvalancheTest, Jonathan “ciruZ” Schleifer and Dominik
“Natureshadow” George for discussion, Theodore “Ted” Ts'o for valuable
input on arc4random_roundhash, “poncho” for suggesting and Orson
“nightcracker” Peters for implementing MixColumns, tarent GmbH for
letting me test this empirically on a 64 GiB RAM machine.

To generate a diff of this changeset, execute the following commands:
cvs -R rdiff -kk -upr1.4 -r1.5 src/kern/include/Makefile
cvs -R rdiff -kk -upr0 -r1.1 src/kern/include/mirhash.h

Reply via email to