This is an example of documentation generated by ZigDoc, an alternative to Zig's built-in Auto Doc feature. See also examples in other modes/formats. The project being documented here (as the example) is the Zig library itself.
SipHash64
SipHash function with 64-bit output.
Recommended parameters are:
(c_rounds=4, d_rounds=8) for conservative security; regular hash functions such as BLAKE2 or BLAKE3 are usually a better alternative.
(c_rounds=2, d_rounds=4) standard parameters.
(c_rounds=1, d_rounds=3) reduced-round function. Faster, no known implications on its practical security level.
(c_rounds=1, d_rounds=2) fastest option, but the output may be distinguishable from random data with related keys or non-uniform input - not suitable as a PRF.
SipHash is not a traditional hash function. If the input includes untrusted content, a secret key is absolutely necessary.
And due to its small output size, collisions in SipHash64 can be found with an exhaustive search.
siphash.SipHash64
pubfnSipHash64(comptimec_rounds: usize, comptimed_rounds: usize) type