Rebex
Products Downloads Buy Support Contact
Show / Hide Table of Contents

DiffieHellman Class

Namespace: Rebex.Security.Cryptography
Assembly: Rebex.Common.dll (version 8.0.9673)

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

Syntax
public abstract class DiffieHellman : AsymmetricAlgorithm, IDisposable
Inheritance
Object
AsymmetricAlgorithm
DiffieHellman
DiffieHellmanCryptoServiceProvider
DiffieHellmanManaged
Implements
IDisposable
Inherited Members
Object.Equals(Object)
Object.Equals(Object, Object)
Object.GetHashCode()
Object.GetType()
Object.MemberwiseClone()
Object.ReferenceEquals(Object, Object)
Object.ToString()
AsymmetricAlgorithm.Clear()
AsymmetricAlgorithm.Create(String)
AsymmetricAlgorithm.Dispose()
AsymmetricAlgorithm.Dispose(Boolean)
AsymmetricAlgorithm.ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters)
AsymmetricAlgorithm.ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters)
AsymmetricAlgorithm.ExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Byte>, PbeParameters)
AsymmetricAlgorithm.ExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Char>, PbeParameters)
AsymmetricAlgorithm.ExportPkcs8PrivateKey()
AsymmetricAlgorithm.ExportPkcs8PrivateKeyPem()
AsymmetricAlgorithm.ExportSubjectPublicKeyInfo()
AsymmetricAlgorithm.ExportSubjectPublicKeyInfoPem()
AsymmetricAlgorithm.ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Int32)
AsymmetricAlgorithm.ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, ReadOnlySpan<Byte>, Int32)
AsymmetricAlgorithm.ImportFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Byte>)
AsymmetricAlgorithm.ImportFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Char>)
AsymmetricAlgorithm.ImportFromPem(ReadOnlySpan<Char>)
AsymmetricAlgorithm.ImportPkcs8PrivateKey(ReadOnlySpan<Byte>, Int32)
AsymmetricAlgorithm.ImportSubjectPublicKeyInfo(ReadOnlySpan<Byte>, Int32)
AsymmetricAlgorithm.KeySize
AsymmetricAlgorithm.KeySizeValue
AsymmetricAlgorithm.LegalKeySizes
AsymmetricAlgorithm.LegalKeySizesValue
AsymmetricAlgorithm.TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters, Span<Byte>, Int32)
AsymmetricAlgorithm.TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters, Span<Byte>, Int32)
AsymmetricAlgorithm.TryExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Byte>, PbeParameters, Span<Char>, Int32)
AsymmetricAlgorithm.TryExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Char>, PbeParameters, Span<Char>, Int32)
AsymmetricAlgorithm.TryExportPkcs8PrivateKey(Span<Byte>, Int32)
AsymmetricAlgorithm.TryExportPkcs8PrivateKeyPem(Span<Char>, Int32)
AsymmetricAlgorithm.TryExportSubjectPublicKeyInfo(Span<Byte>, Int32)
AsymmetricAlgorithm.TryExportSubjectPublicKeyInfoPem(Span<Char>, Int32)

Remarks

This algorithm was developed by Diffie and Hellman in 1976. It allows two users to exchange a secret key over an insecure medium without any prior secrets.

Constructors

Name Description
DiffieHellman()

Initializes a new instance of DiffieHellman.

Properties

Name Description
KeyExchangeAlgorithm

Gets the name of the key exchange algorithm available with this implementation of DiffieHellman.

SignatureAlgorithm

Gets the name of the signature algorithm available with this implementation of DiffieHellman.

Methods

Name Description
Create()

Creates an instance of DiffieHellman class.

Create(Int32)

Creates an instance of DiffieHellman class with a specified key size.

ExportParameters(Boolean)

Exports the DiffieHellmanParameters.

FromXmlString(String)

When overridden in a derived class, reconstructs a DiffieHellmanManaged object from an XML string.

GetKeyMaterialDeriver(Byte[])

Gets key material deriver.

GetOakleyGenerator()

Returns Oakley generator value.

GetOakleyGroup14()

Returns Oakley group 14.

GetOakleyGroup2()

Returns Oakley group 2.

GetOakleyGroupParameters(Int32)

Returns parameters for Oakley Groups 5, 14, 15, 16, 17 or 18 (the 'MODP' groups specified by RFC 3526.

GetPublicKey()

Returns the public key.

GetSharedSecretKey(Byte[])

Calculates the shared secret key from the other side's public key.

ImportParameters(DiffieHellmanParameters)

Imports the specified DiffieHellmanParameters.

ToXmlString(Boolean)

Creates and returns an XML string representation of the current object.

In This Article
© REBEX ČR s.r.o. Back to top
Privacy policy
Manage cookies