@opal There are extensive tests for correctness.
Also, there's technically only one implementation for all the hash functions this way, yet the compiler can still do maximum optimizations.
Other than the transform function, there's only a couple variables:
- Name
- Digest length
- Block length
- Word size
- State size (in words)
- Endianness
- Transform function