Module aoc::util::md5

source ยท
Expand description

MD5 hash algorithm

Computes a 128bit MD5 hash for a slice of u8. The hash is returned as a tuple of four u32 values.

The slice is modified in place and must be a multiple of 64 bytes long with at least 9 bytes spare for the md5 padding. The buffer_size method calculates the necessary size.

To maximize speed the loop for each of the four rounds used to create the hash is unrolled and all internal utility functions marked as #[inline].

An optional SIMD variant that computes multiple hashes in parallel is also implemented.

Functionsยง