Cuemon.Security.Cryptography Namespace
Compute cryptographic hashes (keyed and non-keyed) and perform AES symmetric encryption through a service-oriented API. Use this namespace when you need HMAC, cryptographic hashing, or symmetric encryption. Start with KeyedHashFactory for HMAC, HashFactory for cryptographic hashing, or AesCryptographyService for AES encryption.
Availability: .NET 10, .NET 9 and .NET Standard 2.0
Complements: System.Security.Cryptography namespace 🔗
Classes
- AesCryptor
Provides an implementation of the Advanced Encryption Standard (AES) symmetric algorithm.
- AesCryptorOptions
Configuration options for AesCryptor.
- AesKeyOptions
Configuration options for GenerateKey(Action<AesKeyOptions>).
- HmacMessageDigest5
Provides a Hash-based Message Authentication Code (HMAC) by using the MD5 hash function. This class cannot be inherited. Implements the KeyedCryptoHash<TAlgorithm>
- HmacSecureHashAlgorithm1
Provides a Hash-based Message Authentication Code (HMAC) by using the SHA1 hash function. This class cannot be inherited. Implements the KeyedCryptoHash<TAlgorithm>
- HmacSecureHashAlgorithm256
Provides a Hash-based Message Authentication Code (HMAC) by using the SHA256 hash function. This class cannot be inherited. Implements the KeyedCryptoHash<TAlgorithm>
- HmacSecureHashAlgorithm384
Provides a Hash-based Message Authentication Code (HMAC) by using the SHA384 hash function. This class cannot be inherited. Implements the KeyedCryptoHash<TAlgorithm>
- HmacSecureHashAlgorithm512
Provides a Hash-based Message Authentication Code (HMAC) by using the SHA512 hash function. This class cannot be inherited. Implements the KeyedCryptoHash<TAlgorithm>
- KeyedCryptoHash<TAlgorithm>
Represents the base class from which all implementations of Hash-based Message Authentication Code (HMAC) should derive. Implements the UnkeyedCryptoHash<TAlgorithm>
- KeyedHashFactory
Provides access to factory methods for creating and configuring Hash instances based on KeyedCryptoHash<TAlgorithm>.
- MessageDigest5
Provides a MD5 implementation of the MD (Message Digest) cryptographic hashing algorithm for 128-bit hash values. This class cannot be inherited. Implements the UnkeyedCryptoHash<TAlgorithm>
- SHA512256
Represents the SHA-512/256 cryptographic hash algorithm, which produces a 256-bit hash value using the SHA-512 algorithm as its base.
- SecureHashAlgorithm1
Provides a SHA-1 implementation of the SHA (Secure Hash Algorithm) cryptographic hashing algorithm for 160-bit hash values. This class cannot be inherited. Implements the UnkeyedCryptoHash<TAlgorithm>
- SecureHashAlgorithm256
Provides a SHA-256 implementation of the SHA (Secure Hash Algorithm) cryptographic hashing algorithm for 256-bit hash values. This class cannot be inherited. Implements the UnkeyedCryptoHash<TAlgorithm>
- SecureHashAlgorithm384
Provides a SHA-384 implementation of the SHA (Secure Hash Algorithm) cryptographic hashing algorithm for 384-bit hash values. This class cannot be inherited. Implements the UnkeyedCryptoHash<TAlgorithm>
- SecureHashAlgorithm512
Provides a SHA-512 implementation of the SHA (Secure Hash Algorithm) cryptographic hashing algorithm for 512-bit hash values. This class cannot be inherited. Implements the UnkeyedCryptoHash<TAlgorithm>
- SecureHashAlgorithm512256
Provides a SHA-512-256 implementation of the SHA (Secure Hash Algorithm) cryptographic hashing algorithm for 512-bit hash values. This class cannot be inherited. Implements the UnkeyedCryptoHash<TAlgorithm>
- UnkeyedCryptoHash<TAlgorithm>
Represents the base class from which all implementations of cryptographic hashing algorithm should derive. Implements the Hash<TOptions>
- UnkeyedHashFactory
Provides access to factory methods for creating and configuring Hash instances based on UnkeyedCryptoHash<TAlgorithm>.
Enums
- AesSize
Specifies the size of the Advanced Encryption Standard (AES) symmetric algorithm.
- KeyedCryptoAlgorithm
Specifies the different implementations for generating hash-based message authentication code values.
- UnkeyedCryptoAlgorithm
Specifies the different implementations of a cryptographic hashing algorithm.