Namespace CryptoHives.Foundation.Security.Cryptography.Hash
Classes
- AsconHash256
Computes the Ascon-Hash256 for the input data.
- AsconHashAlgorithm
Base class for Ascon family hash algorithms, providing common sponge construction logic.
- AsconXof128
Computes the Ascon-XOF128 (Extendable Output Function) for the input data.
- Blake2b
Computes the BLAKE2b hash for the input data.
- Blake2s
Computes the BLAKE2s hash for the input data.
- Blake3
Computes the BLAKE3 hash for the input data.
- CShake128
Computes a customizable SHAKE128 (cSHAKE128) output.
- CShake256
Computes a customizable SHAKE256 (cSHAKE256) output.
- HashAlgorithm
Base class for the CryptoHives hash algorithm implementations.
- IncrementalParallelHash
Provides incremental ParallelHash computation.
- KT128
Computes a variable-length hash using KT128 (KangarooTwelve) per RFC 9861.
- KT256
Computes a variable-length hash using KT256 per RFC 9861.
- Keccak256
Computes the Keccak-256 hash for the input data.
- Keccak384
Computes the Keccak-384 hash for the input data.
- Keccak512
Computes the Keccak-512 hash for the input data.
- KeccakCore
All algorithms based on the Keccak permutation should derive from this class. Provides the derived implementations with the core Keccak-f[1600] permutation, state variables and a buffer for the rate bytes.
- KeccakHashCore
Base class for fixed-length Keccak-based hash algorithms (SHA3, Keccak).
- KeccakXofCore
Base class for Keccak-based extendable-output functions (XOF) with variable-length output.
- Kupyna
Computes the Kupyna (DSTU 7564:2014) hash for the input data.
- Lsh256
Computes the LSH-256 hash for the input data.
- Lsh512
Computes the LSH-512 hash for the input data.
- MD5
Computes the MD5 hash for the input data.
- ParallelHash
Computes a variable-length output using ParallelHash (NIST SP 800-185).
- Ripemd160
Computes the RIPEMD-160 hash for the input data.
- SHA1
Computes the SHA-1 hash for the input data.
- SHA224
Computes the SHA-224 hash for the input data.
- SHA256
Computes the SHA-256 hash for the input data.
- SHA384
Computes the SHA-384 hash for the input data.
- SHA3_224
Computes the SHA3-224 hash for the input data.
- SHA3_256
Computes the SHA3-256 hash for the input data.
- SHA3_384
Computes the SHA3-384 hash for the input data.
- SHA3_512
Computes the SHA3-512 hash for the input data.
- SHA512
Computes the SHA-512 hash for the input data.
- SHA512_224
Computes the SHA-512/224 hash for the input data.
- SHA512_256
Computes the SHA-512/256 hash for the input data.
- SM3
Computes the SM3 hash for the input data.
- Sha2HashAlgorithm<T>
Base class for SHA-2 family hash algorithms, providing common buffering and padding logic.
- Shake128
Computes a variable-length output using SHAKE128 (XOF).
- Shake256
Computes a variable-length output using SHAKE256 (XOF).
- Streebog
Computes the Streebog (GOST R 34.11-2012) hash for the input data.
- TurboShake128
Computes a variable-length output using TurboSHAKE128 (XOF) per RFC 9861.
- TurboShake256
Computes a variable-length output using TurboSHAKE256 (XOF) per RFC 9861.
- Whirlpool
Computes the Whirlpool hash for the input data.
Interfaces
- IExtendableOutput
Defines support for extendable-output function (XOF) mode, allowing variable-length output from a hash algorithm.
Enums
- Blake3Mode
Specifies the mode of operation for BLAKE3.
- IncrementalParallelHash.ShakeType
The SHAKE type used for the hash computation.