|Anonymous | Login | Signup for a new account||2015-12-01 15:46 CET|
|Main | My View | View Issues | Change Log | Roadmap|
|View Issue Details|
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0006366||OCaml||OCaml standard library||public||2014-04-12 08:37||2014-07-16 16:02|
|Target Version||Fixed in Version|
|Summary||0006366: [github patch] Switch to the (more collision-resilient?) SipHash function|
The patchset changes the C API exposed in hash.h to make it digest-agnostic
(so as to make future changes simpler) and switches the hash function to
SipHash is a familly of cryptographically-strong hash functions which are
competitive (performance-wise) with MurmurHash, the hash function currently used. SipHash-2-4 ( https://131002.net/siphash/ [^] ) is the recommended version of SipHash.
Preliminary benchmarks look good. However, they were done using the functorized
version of Hashtbl, and this specific proposal hasn't been benchmarked yet.
- The testsuite hasn't been fixed yet (expected values changed for hashes)
Commits expected to change the behaviour of the hash function are nbraud@28bde97 ( https://github.com/nbraud/ocaml/commit/28bde97b8 [^] ) and nbraud@7dde207 ( https://github.com/nbraud/ocaml/commit/7dde207fe [^] )
- This patchset doesn't change the bit-width of the key and output (32 bits).
This weakens the hash function, compared to SipHash-2-4 as specified by its authors, but isn't fixable without breaking the API.
|2014-04-12 08:37||gasche||New Issue|
|2014-04-12 08:38||gasche||Tag Attached: patch|
|2014-04-12 08:38||gasche||Tag Attached: github|
|2014-04-12 08:43||gasche||Severity||minor => feature|
|2014-07-16 16:02||doligez||Status||new => acknowledged|
|Copyright © 2000 - 2011 MantisBT Group|