Next: Working with hash algorithms, Up: Hashing [Contents][Index]
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 shares 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 algorithm has severe weaknesses and should not be used.
GCRY_MD_MD2
This is a 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 bits. 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-512 algorithm which yields a message digest of 64 bytes. See FIPS 180-2 for the specification.
GCRY_MD_SHA512_224
This is the SHA-512/224 algorithm which yields a message digest of 28 bytes. See FIPS 180-4 for the specification.
GCRY_MD_SHA512_256
This is the SHA-512/256 algorithm which yields a message digest of 32 bytes. See FIPS 180-4 for the specification.
GCRY_MD_SHA3_224
This is the SHA3-224 algorithm which yields a message digest of 28 bytes. See FIPS 202 for the specification.
GCRY_MD_SHA3_256
This is the SHA3-256 algorithm which yields a message digest of 32 bytes. See FIPS 202 for the specification.
GCRY_MD_SHA3_384
This is the SHA3-384 algorithm which yields a message digest of 48 bytes. See FIPS 202 for the specification.
GCRY_MD_SHA3_512
This is the SHA3-512 algorithm which yields a message digest of 64 bytes. See FIPS 202 for the specification.
GCRY_MD_SHAKE128
This is the SHAKE128 extendable-output function (XOF) algorithm with 128 bit security strength. See FIPS 202 for the specification.
GCRY_MD_SHAKE256
This is the SHAKE256 extendable-output function (XOF) algorithm with 256 bit security strength. See FIPS 202 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.
GCRY_MD_GOSTR3411_94
This is the hash algorithm described in GOST R 34.11-94 which yields a message digest of 32 bytes.
GCRY_MD_STRIBOG256
This is the 256-bit version of hash algorithm described in GOST R 34.11-2012 which yields a message digest of 32 bytes.
GCRY_MD_STRIBOG512
This is the 512-bit version of hash algorithm described in GOST R 34.11-2012 which yields a message digest of 64 bytes.
GCRY_MD_BLAKE2B_512
This is the BLAKE2b-512 algorithm which yields a message digest of 64 bytes. See RFC 7693 for the specification.
GCRY_MD_BLAKE2B_384
This is the BLAKE2b-384 algorithm which yields a message digest of 48 bytes. See RFC 7693 for the specification.
GCRY_MD_BLAKE2B_256
This is the BLAKE2b-256 algorithm which yields a message digest of 32 bytes. See RFC 7693 for the specification.
GCRY_MD_BLAKE2B_160
This is the BLAKE2b-160 algorithm which yields a message digest of 20 bytes. See RFC 7693 for the specification.
GCRY_MD_BLAKE2S_256
This is the BLAKE2s-256 algorithm which yields a message digest of 32 bytes. See RFC 7693 for the specification.
GCRY_MD_BLAKE2S_224
This is the BLAKE2s-224 algorithm which yields a message digest of 28 bytes. See RFC 7693 for the specification.
GCRY_MD_BLAKE2S_160
This is the BLAKE2s-160 algorithm which yields a message digest of 20 bytes. See RFC 7693 for the specification.
GCRY_MD_BLAKE2S_128
This is the BLAKE2s-128 algorithm which yields a message digest of 16 bytes. See RFC 7693 for the specification.
GCRY_MD_SM3
This is the SM3 algorithm which yields a message digest of 32 bytes.
Next: Working with hash algorithms, Up: Hashing [Contents][Index]