HORIZON HASKELLDocslts/ghc-9.10.xc74966e2026-09-27Search names, modules, packages, or :: a typeCtrl K

GHC 9.10.3 · lts/ghc-9.10.x · c74966e · 2026-09-27

Modulecryptonite-0.30Haskell2010

Crypto.Hash.Algorithms

Definitions of known hash algorithms

  • 44 types
  • 2 classes
  • Packagecryptonite-0.30
  • Exports46
  • LanguageHaskell2010
  • LicenceBSD-3-Clause
  • SourceAlgorithms.hs
classclass HashAlgorithm a where
#

Class representing hashing algorithms.

The interface presented here is update in place and lowlevel. the Hash module takes care of hidding the mutable interface properly.

Instances44HashAlgorithm, …
classclass HashAlgorithm a => HashAlgorithmPrefix a where
#

Hashing algorithms with a constant-time implementation.

Instances6HashAlgorithmPrefix

Hash algorithms

44 declarations
datadata Blake2s_160
#

Blake2s (160 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Blake2s_224
#

Blake2s (224 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Blake2s_256
#

Blake2s (256 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Blake2sp_224
#

Blake2sp (224 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Blake2sp_256
#

Blake2sp (256 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Blake2b_160
#

Blake2b (160 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Blake2b_224
#

Blake2b (224 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Blake2b_256
#

Blake2b (256 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Blake2b_384
#

Blake2b (384 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Blake2b_512
#

Blake2b (512 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Blake2bp_512
#

Blake2bp (512 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata MD2
#

MD2 cryptographic hash algorithm

Instances7Data, Show, HashAlgorithm, HashAlgorithmASN1, HashBlockSize, HashDigestSize, …
datadata MD4
#

MD4 cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata MD5
#

MD5 cryptographic hash algorithm

Instances8Data, Show, HashAlgorithm, HashAlgorithmPrefix, HashAlgorithmASN1, HashBlockSize, …
datadata SHA1
#

SHA1 cryptographic hash algorithm

Instances8Data, Show, HashAlgorithm, HashAlgorithmPrefix, HashAlgorithmASN1, HashBlockSize, …
datadata SHA224
#

SHA224 cryptographic hash algorithm

Instances8Data, Show, HashAlgorithm, HashAlgorithmPrefix, HashAlgorithmASN1, HashBlockSize, …
datadata SHA256
#

SHA256 cryptographic hash algorithm

Instances8Data, Show, HashAlgorithm, HashAlgorithmPrefix, HashAlgorithmASN1, HashBlockSize, …
datadata SHA384
#

SHA384 cryptographic hash algorithm

Instances8Data, Show, HashAlgorithm, HashAlgorithmPrefix, HashAlgorithmASN1, HashBlockSize, …
datadata SHA512
#

SHA512 cryptographic hash algorithm

Instances8Data, Show, HashAlgorithm, HashAlgorithmPrefix, HashAlgorithmASN1, HashBlockSize, …
datadata SHA512t_224
#

SHA512t (224 bits) cryptographic hash algorithm

Instances7Data, Show, HashAlgorithm, HashAlgorithmASN1, HashBlockSize, HashDigestSize, …
datadata SHA512t_256
#

SHA512t (256 bits) cryptographic hash algorithm

Instances7Data, Show, HashAlgorithm, HashAlgorithmASN1, HashBlockSize, HashDigestSize, …
datadata RIPEMD160
#

RIPEMD160 cryptographic hash algorithm

Instances7Data, Show, HashAlgorithm, HashAlgorithmASN1, HashBlockSize, HashDigestSize, …
datadata Tiger
#

Tiger cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Keccak_224
#

Keccak (224 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Keccak_256
#

Keccak (256 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Keccak_384
#

Keccak (384 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Keccak_512
#

Keccak (512 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata SHA3_224
#

SHA3 (224 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata SHA3_256
#

SHA3 (256 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata SHA3_384
#

SHA3 (384 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata SHA3_512
#

SHA3 (512 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata SHAKE128 (bitlen :: Nat)
#

SHAKE128 (128 bits) extendable output function. Supports an arbitrary digest size, to be specified as a type parameter of kind Nat.

Note: outputs from SHAKE128 n and SHAKE128 m for the same input are correlated (one being a prefix of the other). Results are unrelated to SHAKE256 results.

Instances7Data, Show, HashAlgorithm, HashSHAKE, HashBlockSize, HashDigestSize, …
datadata SHAKE256 (bitlen :: Nat)
#

SHAKE256 (256 bits) extendable output function. Supports an arbitrary digest size, to be specified as a type parameter of kind Nat.

Note: outputs from SHAKE256 n and SHAKE256 m for the same input are correlated (one being a prefix of the other). Results are unrelated to SHAKE128 results.

Instances7Data, Show, HashAlgorithm, HashSHAKE, HashBlockSize, HashDigestSize, …
datadata Blake2b (bitlen :: Nat)
#

Fast cryptographic hash.

It is especially known to target 64bits architectures.

Known supported digest sizes:

  • Blake2b 160

  • Blake2b 224

  • Blake2b 256

  • Blake2b 384

  • Blake2b 512

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Blake2bp (bitlen :: Nat)
#
Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Blake2s (bitlen :: Nat)
#

Fast and secure alternative to SHA1 and HMAC-SHA1

It is espacially known to target 32bits architectures.

Known supported digest sizes:

  • Blake2s 160

  • Blake2s 224

  • Blake2s 256

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Blake2sp (bitlen :: Nat)
#
Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Skein256_224
#

Skein256 (224 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Skein256_256
#

Skein256 (256 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Skein512_224
#

Skein512 (224 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Skein512_256
#

Skein512 (256 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Skein512_384
#

Skein512 (384 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Skein512_512
#

Skein512 (512 bits) cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize
datadata Whirlpool
#

Whirlpool cryptographic hash algorithm

Instances6Data, Show, HashAlgorithm, HashBlockSize, HashDigestSize, HashInternalContextSize