Good idea.
Even if not used directly, it is a good reference for odd hash algorithms source code in pascal.

There is a similar hash registration in mORMot 2.
You can either run directly the low-level hashing functions, or you have some high-level catalog.
https://github.com/synopse/mORMot2/blob/master/src/crypt/mormot.crypt.secure.pas#L946var hasher: ICryptHash;
begin
hasher := Hash('crc32c');
hasher.Update('some text');
writeln(hasher.Final);
end;
or in a one-liner
writeln(Hash('crc32c').Full('some text'));
mormot.core.secure unit supports 'md5', 'sha1', 'sha256', 'sha384', 'sha512', 'sha3_256', 'sha3_512' and 32-bit non-cryptographic 'crc32', 'crc32c','xxhash32', 'adler32', 'fnv32' for ICryptHash, and there are ICryptSigner for salted digest like 'hmac-sha1', 'hmac-sha256', 'hmac-sha384', 'hmac-sha512', and 'sha3-224', 'sha3-256', 'sha3-384', 'sha3-512', 'sha3-s128', 'sha3-s256'.
And there are the same catalog system for encryption, randomness and also certificates and asymetric cryptography, using either native mORMot code, or OpenSSL.