ECDiffieHellman Klasse

Definition

Stellt eine abstrakte Basisklasse bereit, von der Elliptic Curve Diffie-Hellman (ECDH)-Algorithmusimplementierungen abgeleitet werden können. Diese Klasse stellt die grundlegenden Vorgänge bereit, die alle ECDH-Implementierungen unterstützen müssen.

public ref class ECDiffieHellman abstract : System::Security::Cryptography::AsymmetricAlgorithm
public abstract class ECDiffieHellman : System.Security.Cryptography.AsymmetricAlgorithm
type ECDiffieHellman = class
    inherit AsymmetricAlgorithm
Public MustInherit Class ECDiffieHellman
Inherits AsymmetricAlgorithm
Vererbung
ECDiffieHellman
Abgeleitet

Hinweise

Diese Klasse dient als abstrakte Basisklasse für ECDH-Implementierungen.

Konstruktoren

Name Beschreibung
ECDiffieHellman()

Initialisiert eine neue Instanz der ECDiffieHellman-Klasse.

Felder

Name Beschreibung
KeySizeValue

Stellt die Größe des schlüsselmodulus in Bits dar, das vom asymmetrischen Algorithmus verwendet wird.

(Geerbt von AsymmetricAlgorithm)
LegalKeySizesValue

Gibt die Schlüsselgrößen an, die vom asymmetrischen Algorithmus unterstützt werden.

(Geerbt von AsymmetricAlgorithm)

Eigenschaften

Name Beschreibung
KeyExchangeAlgorithm

Ruft den Namen des Schlüsselaustauschalgorithmus ab.

KeySize

Ruft die Größe des schlüsselmodulus in Bits ab, das vom asymmetrischen Algorithmus verwendet wird, oder legt diese fest.

(Geerbt von AsymmetricAlgorithm)
LegalKeySizes

Ruft die Schlüsselgrößen ab, die vom asymmetrischen Algorithmus unterstützt werden.

(Geerbt von AsymmetricAlgorithm)
PublicKey

Ruft den öffentlichen Schlüssel ab, der von der aktuellen Elliptic Curve Diffie-Hellman (ECDH)-Instanz verwendet wird.

SignatureAlgorithm

Ruft den Namen des Signaturalgorithmus ab.

Methoden

Name Beschreibung
Clear()

Gibt alle Ressourcen frei, die von der AsymmetricAlgorithm-Klasse verwendet werden.

(Geerbt von AsymmetricAlgorithm)
Create()

Erstellt eine neue Instanz der Standardimplementierung des Elliptic Curve Diffie-Hellman (ECDH)-Algorithmus.

Create(ECCurve)

Erstellt eine neue Instanz der Standardimplementierung des Elliptic Curve Diffie-Hellman (ECDH)-Algorithmus mit einem neuen öffentlichen/privaten Schlüsselpaar, das über die angegebene Kurve generiert wird.

Create(ECParameters)

Erstellt eine neue Instanz der Standardimplementierung des Elliptic Curve Diffie-Hellman (ECDH)-Algorithmus mit dem vom angegebenen ECParameters Objekt beschriebenen Schlüssel.

Create(String)

Erstellt eine neue Instanz der angegebenen Implementierung des Elliptic Curve Diffie-Hellman (ECDH)-Algorithmus.

DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[])

Wenn sie in einer abgeleiteten Klasse implementiert wird, führt die Schlüsselableitung mithilfe eines angegebenen Hashalgorithmus mit optionalen vordefinierten oder angefügten Daten aus.

DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName)

Führt die Schlüsselableitung mit einem angegebenen Hashalgorithmus aus.

DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[], Byte[])

Wenn sie in einer abgeleiteten Klasse implementiert wird, führt die Schlüsselableitung mit einem angegebenen HMAC-Algorithmus (Hashbasierter Nachrichtenauthentifizierungscode) mit optionalen vordefinierten oder angefügten Daten aus.

DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[])

Führt die Schlüsselableitung mithilfe eines angegebenen HMAC-Algorithmus (Hash-based Message Authentication Code) aus.

DeriveKeyMaterial(ECDiffieHellmanPublicKey)

Wenn sie in einer abgeleiteten Klasse implementiert wird, wird eine Schlüsselableitung für den freigegebenen geheimen Schlüssel ausgeführt.

DeriveKeyTls(ECDiffieHellmanPublicKey, Byte[], Byte[])

Wenn sie in einer abgeleiteten Klasse implementiert wird, führt die Schlüsselableitung mithilfe der TLS (Transport Layer Security) 1.1 PRF (Pseudo-Random Function) aus.

Dispose()

Gibt alle Ressourcen frei, die von der aktuellen Instanz der AsymmetricAlgorithm Klasse verwendet werden.

(Geerbt von AsymmetricAlgorithm)
Dispose(Boolean)

Gibt die von der AsymmetricAlgorithm Klasse verwendeten nicht verwalteten Ressourcen frei und gibt optional die verwalteten Ressourcen frei.

(Geerbt von AsymmetricAlgorithm)
Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
ExportECPrivateKey()

Exportiert den aktuellen Schlüssel im ECPrivateKey-Format.

ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters)

Exportiert den aktuellen Schlüssel im PKCS#8 EncryptedPrivateKeyInfo-Format mit einem bytebasierten Kennwort.

(Geerbt von AsymmetricAlgorithm)
ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters)

Exportiert den aktuellen Schlüssel im PKCS#8 EncryptedPrivateKeyInfo-Format mit einem zeichenbasierten Kennwort.

(Geerbt von AsymmetricAlgorithm)
ExportExplicitParameters(Boolean)

Wenn sie in einer abgeleiteten Klasse überschrieben werden, werden entweder die informationen des öffentlichen oder des öffentlichen oder privaten Schlüssels mithilfe des expliziten Kurvenformulars von einem Arbeitsschlüssel ECDiffieHellman in eine ECParameters Struktur exportiert, sodass sie an die ImportParameters(ECParameters) Methode übergeben werden kann.

ExportParameters(Boolean)

Wenn sie in einer abgeleiteten Klasse außer Kraft gesetzt wird, werden entweder die Informationen des öffentlichen oder des öffentlichen oder privaten Schlüssels aus einem Arbeitsschlüssel ECDiffieHellman in eine ECParameters Struktur exportiert, sodass sie an die ImportParameters(ECParameters) Methode übergeben werden kann.

ExportPkcs8PrivateKey()

Exportiert den aktuellen Schlüssel im PKCS#8 PrivateKeyInfo-Format.

(Geerbt von AsymmetricAlgorithm)
ExportSubjectPublicKeyInfo()

Exportiert den public-key-Teil des aktuellen Schlüssels im X.509 SubjectPublicKeyInfo-Format.

(Geerbt von AsymmetricAlgorithm)
FromXmlString(String)

Diese Methode löst in allen Fällen aus.

FromXmlString(String)

Wenn ein Objekt in einer abgeleiteten Klasse überschrieben wird, wird ein AsymmetricAlgorithm Objekt aus einer XML-Zeichenfolge rekonstruiert. Andernfalls löst ein NotImplementedException.

(Geerbt von AsymmetricAlgorithm)
GenerateKey(ECCurve)

Wenn sie in einer abgeleiteten Klasse überschrieben wird, wird ein neues kurzlebiges öffentliches/privates Schlüsselpaar für die angegebene Kurve generiert.

GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
ImportECPrivateKey(ReadOnlySpan<Byte>, Int32)

Importiert den öffentlichen/privaten Keypair aus einer ECPrivateKey-Struktur, wobei die Schlüssel für dieses Objekt ersetzt werden.

ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Int32)

Wenn sie in einer abgeleiteten Klasse außer Kraft gesetzt wird, importiert der öffentliche/private Keypair aus einer PKCS#8 EncryptedPrivateKeyInfo-Struktur nach der Entschlüsselung mit einem bytebasierten Kennwort, wobei die Schlüssel für dieses Objekt ersetzt werden.

(Geerbt von AsymmetricAlgorithm)
ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, ReadOnlySpan<Byte>, Int32)

Wenn sie in einer abgeleiteten Klasse überschrieben wird, importiert das public/private keypair aus einer PKCS#8 EncryptedPrivateKeyInfo-Struktur nach der Entschlüsselung mit einem charbasierten Kennwort, wobei die Schlüssel für dieses Objekt ersetzt werden.

(Geerbt von AsymmetricAlgorithm)
ImportParameters(ECParameters)

Wenn sie in einer abgeleiteten Klasse überschrieben wird, werden die angegebenen Parameter für einen ECCurve als kurzlebiger Schlüssel in das aktuelle ECDiffieHellman Objekt importiert.

ImportPkcs8PrivateKey(ReadOnlySpan<Byte>, Int32)

Beim Außerkraftsetzen in einer abgeleiteten Klasse importiert der öffentliche/private Keypair nach der Entschlüsselung aus einer PKCS#8 PrivateKeyInfo-Struktur, wobei die Schlüssel für dieses Objekt ersetzt werden.

(Geerbt von AsymmetricAlgorithm)
ImportSubjectPublicKeyInfo(ReadOnlySpan<Byte>, Int32)

Beim Außerkraftsetzen in einer abgeleiteten Klasse importiert der öffentliche Schlüssel aus einer X.509 SubjectPublicKeyInfo-Struktur nach der Entschlüsselung, wobei die Schlüssel für dieses Objekt ersetzt werden.

(Geerbt von AsymmetricAlgorithm)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)
ToXmlString(Boolean)

Diese Methode löst in allen Fällen aus.

ToXmlString(Boolean)

Wenn eine abgeleitete Klasse überschrieben wird, wird eine XML-Zeichenfolgendarstellung des aktuellen AsymmetricAlgorithm Objekts erstellt und zurückgegeben. Andernfalls löst ein NotImplementedException.

(Geerbt von AsymmetricAlgorithm)
TryExportECPrivateKey(Span<Byte>, Int32)

Versucht, den aktuellen Schlüssel im Format in ECPrivateKey einen bereitgestellten Puffer zu exportieren.

TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters, Span<Byte>, Int32)

Beim Überschreiben in einer abgeleiteten Klasse versucht, den aktuellen Schlüssel im PKCS#8 EncryptedPrivateKeyInfo-Format in einen bereitgestellten Puffer mithilfe eines bytebasierten Kennworts zu exportieren.

(Geerbt von AsymmetricAlgorithm)
TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters, Span<Byte>, Int32)

Beim Überschreiben in einer abgeleiteten Klasse versucht, den aktuellen Schlüssel im PKCS#8 EncryptedPrivateKeyInfo-Format in einen bereitgestellten Puffer mithilfe eines charbasierten Kennworts zu exportieren.

(Geerbt von AsymmetricAlgorithm)
TryExportPkcs8PrivateKey(Span<Byte>, Int32)

Beim Überschreiben in einer abgeleiteten Klasse versucht, den aktuellen Schlüssel im PKCS#8 PrivateKeyInfo-Format in einen bereitgestellten Puffer zu exportieren.

(Geerbt von AsymmetricAlgorithm)
TryExportSubjectPublicKeyInfo(Span<Byte>, Int32)

Beim Überschreiben in einer abgeleiteten Klasse versucht, den aktuellen Schlüssel im X.509 SubjectPublicKeyInfo-Format in einen bereitgestellten Puffer zu exportieren.

(Geerbt von AsymmetricAlgorithm)

Explizite Schnittstellenimplementierungen

Name Beschreibung
IDisposable.Dispose()

Diese API unterstützt die Produktinfrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code gedacht.

Eine Beschreibung dieses Mitglieds finden Sie unter Dispose().

(Geerbt von AsymmetricAlgorithm)

Gilt für: