ECDiffieHellman Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет абстрактный базовый класс, от производных от реализации алгоритмов Elliptic Curve Diffie-Hellman (ECDH). Этот класс предоставляет базовый набор операций, которые должны поддерживать все реализации ECDH.
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
- Наследование
- Производный
Комментарии
Этот класс служит абстрактным базовым классом для реализаций ECDH.
Конструкторы
| Имя | Описание |
|---|---|
| ECDiffieHellman() |
Инициализирует новый экземпляр класса ECDiffieHellman. |
Поля
| Имя | Описание |
|---|---|
| KeySizeValue |
Представляет размер в битах модуля ключа, используемого асимметричным алгоритмом. (Унаследовано от AsymmetricAlgorithm) |
| LegalKeySizesValue |
Указывает размеры ключей, поддерживаемые асимметричным алгоритмом. (Унаследовано от AsymmetricAlgorithm) |
Свойства
| Имя | Описание |
|---|---|
| KeyExchangeAlgorithm |
Возвращает имя алгоритма обмена ключами. |
| KeySize |
Возвращает или задает размер в битах модуля ключа, используемого асимметричным алгоритмом. (Унаследовано от AsymmetricAlgorithm) |
| LegalKeySizes |
Возвращает размеры ключей, поддерживаемые асимметричным алгоритмом. (Унаследовано от AsymmetricAlgorithm) |
| PublicKey |
Возвращает открытый ключ, используемый текущим экземпляром Diffie-Hellman эллиптических кривых (ECDH). |
| SignatureAlgorithm |
Возвращает имя алгоритма подписи. |
Методы
| Имя | Описание |
|---|---|
| Clear() |
Освобождает все ресурсы, используемые классом AsymmetricAlgorithm . (Унаследовано от AsymmetricAlgorithm) |
| Create() |
Создает новый экземпляр реализации по умолчанию алгоритма elliptic Curve Diffie-Hellman (ECDH). |
| Create(ECCurve) |
Создает новый экземпляр реализации по умолчанию алгоритма elliptic Curve Diffie-Hellman (ECDH) с новой парой открытого и закрытого ключа, созданной по заданной кривой. |
| Create(ECParameters) |
Создает новый экземпляр реализации по умолчанию алгоритма elliptic Curve Diffie-Hellman (ECDH) с ключом, описанным указанным ECParameters объектом. |
| Create(String) |
Создает новый экземпляр указанной реализации алгоритма elliptic Curve Diffie-Hellman (ECDH). |
| DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[]) |
При реализации в производном классе выполняет производные ключи с помощью заданного хэш-алгоритма с необязательными предварительно заданными или добавленными данными. |
| DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName) |
Выполняет производный ключ с помощью указанного хэш-алгоритма. |
| DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[], Byte[]) |
При реализации в производном классе выполняет производные ключи с помощью указанного алгоритма HMAC (хэш-код проверки подлинности сообщений) с необязательными предварительно заданными или добавленными данными. |
| DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[]) |
Выполняет производный ключ с помощью заданного алгоритма HMAC (код проверки подлинности на основе хэша). |
| DeriveKeyMaterial(ECDiffieHellmanPublicKey) |
При реализации в производном классе выполняет производный ключ от общего секрета. |
| DeriveKeyTls(ECDiffieHellmanPublicKey, Byte[], Byte[]) |
При реализации в производном классе выполняет производный ключ с помощью протокола TLS (transport Layer Security) 1.1 PRF (функцияPseudo-Random). |
| Dispose() |
Освобождает все ресурсы, используемые текущим экземпляром класса AsymmetricAlgorithm. (Унаследовано от AsymmetricAlgorithm) |
| Dispose(Boolean) |
Освобождает неуправляемые ресурсы, используемые классом AsymmetricAlgorithm , и при необходимости освобождает управляемые ресурсы. (Унаследовано от AsymmetricAlgorithm) |
| Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
| ExportECPrivateKey() |
Экспортирует текущий ключ в формате ECPrivateKey. |
| ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters) |
Экспортирует текущий ключ в формате PKCS#8 EncryptedPrivateKeyInfo с паролем на основе байтов. (Унаследовано от AsymmetricAlgorithm) |
| ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters) |
Экспортирует текущий ключ в формате PKCS#8 EncryptedPrivateKeyInfo с паролем на основе символов. (Унаследовано от AsymmetricAlgorithm) |
| ExportExplicitParameters(Boolean) |
При переопределении в производном классе экспортирует данные открытого или закрытого ключа с помощью явной формы кривой из рабочего ECDiffieHellman ключа ECParameters в структуру, чтобы его можно было передать методу ImportParameters(ECParameters) . |
| ExportParameters(Boolean) |
При переопределении в производном классе экспортирует данные открытого или закрытого ключа из рабочего ECDiffieHellman ключа ECParameters в структуру, чтобы его можно было передать методу ImportParameters(ECParameters) . |
| ExportPkcs8PrivateKey() |
Экспортирует текущий ключ в формате PKCS#8 PrivateKeyInfo. (Унаследовано от AsymmetricAlgorithm) |
| ExportSubjectPublicKeyInfo() |
Экспортирует часть открытого ключа текущего ключа в формате X.509 SubjectPublicKeyInfo. (Унаследовано от AsymmetricAlgorithm) |
| FromXmlString(String) |
Этот метод вызывается во всех случаях. |
| FromXmlString(String) |
При переопределении в производном классе восстанавливает AsymmetricAlgorithm объект из XML-строки. В противном случае вызывает NotImplementedExceptionисключение . (Унаследовано от AsymmetricAlgorithm) |
| GenerateKey(ECCurve) |
При переопределении в производном классе создает новую эфемерную пару открытого и закрытого ключа для указанной кривой. |
| GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| ImportECPrivateKey(ReadOnlySpan<Byte>, Int32) |
Импортирует открытый или закрытый ключ из структуры ECPrivateKey, заменив ключи для этого объекта. |
| ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Int32) |
При переопределении в производном классе импортирует открытый и закрытый ключ из структуры PKCS#8 EncryptedPrivateKeyInfo после расшифровки паролем на основе байтов, заменив ключи для этого объекта. (Унаследовано от AsymmetricAlgorithm) |
| ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, ReadOnlySpan<Byte>, Int32) |
При переопределении в производном классе импортирует открытый/закрытый ключ из структуры PKCS#8 EncryptedPrivateKeyInfo после расшифровки паролем на основе символов, заменив ключи для этого объекта. (Унаследовано от AsymmetricAlgorithm) |
| ImportParameters(ECParameters) |
При переопределении в производном классе импортирует указанные параметры для ECCurve эфемерного ключа в текущий ECDiffieHellman объект. |
| ImportPkcs8PrivateKey(ReadOnlySpan<Byte>, Int32) |
При переопределении в производном классе импортирует открытый или закрытый ключ из структуры PKCS#8 PrivateKeyInfo после расшифровки, заменив ключи для этого объекта. (Унаследовано от AsymmetricAlgorithm) |
| ImportSubjectPublicKeyInfo(ReadOnlySpan<Byte>, Int32) |
При переопределении в производном классе импортирует открытый ключ из структуры SubjectPublicKeyInfo X.509 после расшифровки, заменив ключи для этого объекта. (Унаследовано от AsymmetricAlgorithm) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
| ToXmlString(Boolean) |
Этот метод вызывается во всех случаях. |
| ToXmlString(Boolean) |
При переопределении в производном классе создает и возвращает xml-строковое представление текущего AsymmetricAlgorithm объекта. В противном случае вызывает NotImplementedExceptionисключение . (Унаследовано от AsymmetricAlgorithm) |
| TryExportECPrivateKey(Span<Byte>, Int32) |
Пытается экспортировать текущий ключ в |
| TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters, Span<Byte>, Int32) |
При переопределении в производном классе пытается экспортировать текущий ключ в формате PKCS#8 EncryptedPrivateKeyInfo в предоставленный буфер с помощью пароля на основе байтов. (Унаследовано от AsymmetricAlgorithm) |
| TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters, Span<Byte>, Int32) |
При переопределении в производном классе пытается экспортировать текущий ключ в формате PKCS#8 EncryptedPrivateKeyInfo в предоставленный буфер с помощью пароля на основе символов. (Унаследовано от AsymmetricAlgorithm) |
| TryExportPkcs8PrivateKey(Span<Byte>, Int32) |
При переопределении в производном классе пытается экспортировать текущий ключ в формате PKCS#8 PrivateKeyInfo в предоставленный буфер. (Унаследовано от AsymmetricAlgorithm) |
| TryExportSubjectPublicKeyInfo(Span<Byte>, Int32) |
При переопределении в производном классе пытается экспортировать текущий ключ в формате X.509 SubjectPublicKeyInfo в предоставленный буфер. (Унаследовано от AsymmetricAlgorithm) |
Явные реализации интерфейса
| Имя | Описание |
|---|---|
| IDisposable.Dispose() |
Этот API поддерживает инфраструктуру продукта и не предназначен для использования непосредственно из программного кода. Описание этого элемента см. в разделе Dispose(). (Унаследовано от AsymmetricAlgorithm) |