dissect.util.hash.jenkins¶
Module Contents¶
Functions¶
Hashes a variable-length key into a 64-bit value. |
|
Hashes a key consisting of |
- dissect.util.hash.jenkins.lookup8(key: bytes, level: int) int¶
Hashes a variable-length key into a 64-bit value.
This hash function is used in the ESXi kernel.
References
- dissect.util.hash.jenkins.lookup8_quads(key: bytes, level: int) int¶
Hashes a key consisting of
num64-bit integers into a 64-bit value.This hash function is used in the ESXi kernel, but unlike
lookup8(), this variant is not compatible with any of the originallookup8.cimplementations. The difference between this variant andlookup8()is that in the final step, the value ofcis incremented by the number of quads, not the number of bytes in the key. Whilehash2inlookup8.cis also optimized for 64-bit aligned keys, (and uses the number of quads as argument for the key size, not bytes) it uses the length of the key in bytes to incrementcin the final step.References
HashFunc_HashQuads