Namespace Cuemon.Security.Cryptography
The Cuemon.Security.Cryptography
namespace contains types related to cryptographic hashing (both keyed and non-keyed) and a ready-to-use implementation of the Advanced Encryption Standard (AES) symmetric algorithm. The namespace is an addition to the System.Security.Cryptography
namespace.
Availability: .NET 9, .NET 8 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>
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>
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.