# Rebex.Security.Cryptography Namespace

### Classes

#### AesGcm

Represents the AES-GCM cryptographic operation.

#### ArcFour

Represents the base class from which all implementations of the ArcFour algorithm must derive.

#### ArcFourManaged

The managed version of the ArcFour algorithm.

#### ArcTwoManaged

The managed version of the algorithm defined by RFC 2268.

#### Argon2

This class represents Argon2 memory-hard hash algorithm for password hashing and proof-of-work applications. Specified by RFC 9106. Supports all Argon2 variants: Argon2i, Argon2d, and Argon2id.

#### Argon2Configuration

Configuration for Argon2 class.

#### AsymmetricKeyAlgorithm

A platform-independent asymmetric algorithm object.

#### Blake2b

This class represents the BLAKE2b cryptographic hash and message authentication code (MAC) algorithm with custom (user-defined) hash size. Specified by RFC 7693. BLAKE2 provides better security than SHA-2 (it is comparable to that of SHA-3).

#### Blake2b256

This class represents the BLAKE2b cryptographic hash and message authentication code (MAC) algorithm with hash size of 256 bits (32 bytes).

#### Blake2b384

This class represents the BLAKE2b cryptographic hash and message authentication code (MAC) algorithm with hash size of 384 bits (48 bytes).

#### Blake2b512

This class represents the BLAKE2b cryptographic hash and message authentication code (MAC) algorithm with hash size of 512 bits (64 bytes).

#### Blowfish

Represents the base class from which all implementations of Bruce Schneier's Blowfish algorithm must derive.

#### BlowfishManaged

The managed version of the Blowfish algorithm.

#### ChaCha20Poly1305

Represents an authenticated encryption with associated data (AEAD) ChaCha20/Poly1305 cipher.

#### CryptographicCollection

A base class for various collections of cryptographic objects.

#### CryptographicCollection<T>

A base class for various collections of cryptographic objects.

#### CryptoHelper

Provides various cryptography-related helper methods.

#### DiffieHellman

Implements Diffie-Hellman key agreement protocol (also called exponential key agreement).

#### DiffieHellmanCryptoServiceProvider

Wrapper around Diffie-Hellman CSP.

#### DiffieHellmanManaged

Managed implementation of Diffie-Hellman algorithm.

#### DSAManaged

Managed implementation of DSA signature algorithm.

#### EncryptionParameters

Encryption parameters.

#### HashingAlgorithm

Represents a hash algorithm.

#### HKDF

Implements HMAC-based Extract-and-Expand key derivation function (HKDF)
as specified by RFC 5869.
Provides `Extract`

, `Expand`

and `DeriveKey`

derivation functions.

#### HMAC

Computes a Hash-based Message Authentication Code (HMAC) for the input data using the specified hash function.

#### KeyDerivationParameters

Key derivation parameters.

#### KeyMaterialDeriver

Key material deriver.

#### MD4Managed

Managed implementation of MD4 algorithm.

#### MD5Managed

Managed implementation of MD5 algorithm.

#### MD5SHA1

Computes the combined MD5/SHA1 hash for the input data.

#### ObjectIdentifier

Represents a cryptographic object identifier.

#### Pkcs12KeyGenerator

PKCS #12 key derivation algorithm.

#### RSAManaged

Managed implementation of RSA algorithm.

#### SignatureParameters

Signature parameters.

#### SymmetricKeyAlgorithm

Represents a symmetric cipher algorithm.

#### Twofish

Represents the base class from which all implementations of Bruce Schneier's Twofish algorithm must derive.

#### TwofishManaged

The managed version of the Twofish algorithm.

#### Xts

Represents XTS-AES, a standard algorithm for protection of stored data defined by IEEE P1619.

### Structs

#### DiffieHellmanParameters

Contains the parameters for Diffie-Hellman algorithm.

### Interfaces

#### IHashTransform

Represents a hash transform.

### Enums

#### Argon2Type

Specifies a variant of the Argon2 algorithm.

#### AsymmetricKeyAlgorithmId

Specifies asymmetric algorithm.

#### AsymmetricKeyFormat

Specifies key blob format.

#### EncryptionPaddingScheme

Encryption schemes.

#### HashingAlgorithmId

Specifies hash algorithm for HashingAlgorithm class.

#### HashingAlgorithmKeyMode

Specifies hash algorithm key mode.

#### SignatureFormat

Signature format.

#### SignaturePaddingScheme

Signature padding scheme.

#### SymmetricKeyAlgorithmId

Specifies symmetric algorithm.