`GCRY_MD_NONE`

- This is not a real algorithm but used by some functions as an error
return value. This constant is guaranteed to have the value
`0`

. `GCRY_MD_SHA1`

- This is the SHA-1 algorithm which yields a message digest of 20 bytes.
Note that SHA-1 begins to show some weaknesses and it is suggested to
fade out its use if strong cryptographic properties are required.
`GCRY_MD_RMD160`

- This is the 160 bit version of the RIPE message digest (RIPE-MD-160).
Like SHA-1 it also yields a digest of 20 bytes. This algorithm share a
lot of design properties with SHA-1 and thus it is advisable not to use
it for new protocols.
`GCRY_MD_MD5`

- This is the well known MD5 algorithm, which yields a message digest of
16 bytes. Note that the MD5 algorithm has severe weaknesses, for
example it is easy to compute two messages yielding the same hash
(collision attack). The use of this algorithm is only justified for
non-cryptographic application.
`GCRY_MD_MD4`

- This is the MD4 algorithm, which yields a message digest of 16 bytes.
This algorithms ha severe weaknesses and should not be used.
`GCRY_MD_MD2`

- This is an reserved identifier for MD-2; there is no implementation yet.
This algorithm has severe weaknesses and should not be used.
`GCRY_MD_TIGER`

- This is the TIGER/192 algorithm which yields a message digest of 24
bytes. Actually this is a variant of TIGER with a different output
print order as used by GnuPG up to version 1.3.2.
`GCRY_MD_TIGER1`

- This is the TIGER variant as used by the NESSIE project. It uses the
most commonly used output print order.
`GCRY_MD_TIGER2`

- This is another variant of TIGER with a different padding scheme.
`GCRY_MD_HAVAL`

- This is an reserved value for the HAVAL algorithm with 5 passes and 160
bit. It yields a message digest of 20 bytes. Note that there is no
implementation yet available.
`GCRY_MD_SHA224`

- This is the SHA-224 algorithm which yields a message digest of 28 bytes.
See Change Notice 1 for FIPS 180-2 for the specification.
`GCRY_MD_SHA256`

- This is the SHA-256 algorithm which yields a message digest of 32 bytes.
See FIPS 180-2 for the specification.
`GCRY_MD_SHA384`

- This is the SHA-384 algorithm which yields a message digest of 48 bytes.
See FIPS 180-2 for the specification.
`GCRY_MD_SHA512`

- This is the SHA-384 algorithm which yields a message digest of 64 bytes.
See FIPS 180-2 for the specification.
`GCRY_MD_CRC32`

- This is the ISO 3309 and ITU-T V.42 cyclic redundancy check. It yields
an output of 4 bytes. Note that this is not a hash algorithm in the
cryptographic sense.
`GCRY_MD_CRC32_RFC1510`

- This is the above cyclic redundancy check function, as modified by RFC
1510. It yields an output of 4 bytes. Note that this is not a hash
algorithm in the cryptographic sense.
`GCRY_MD_CRC24_RFC2440`

- This is the OpenPGP cyclic redundancy check function. It yields an
output of 3 bytes. Note that this is not a hash algorithm in the
cryptographic sense.
`GCRY_MD_WHIRLPOOL`

- This is the Whirlpool algorithm which yields a message digest of 64 bytes.