ECDiffieHellmanOpenSsl Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет реализацию алгоритма elliptic curve Diffie-Hellman (ECDH), поддерживаемого OpenSSL.
public ref class ECDiffieHellmanOpenSsl sealed : System::Security::Cryptography::ECDiffieHellman
public sealed class ECDiffieHellmanOpenSsl : System.Security.Cryptography.ECDiffieHellman
type ECDiffieHellmanOpenSsl = class
inherit ECDiffieHellman
Public NotInheritable Class ECDiffieHellmanOpenSsl
Inherits ECDiffieHellman
- Наследование
- Наследование
Комментарии
Этот класс следует использовать только непосредственно при выполнении взаимодействия платформы с системной библиотекой OpenSSL. Если взаимодействие платформы не требуется, вместо конкретной производной реализации следует использовать ECDiffieHellman.Create методы фабрики.
Конструкторы
| Имя | Описание |
|---|---|
| ECDiffieHellmanOpenSsl() |
Инициализирует новый экземпляр ECDiffieHellmanOpenSsl класса с кривой по умолчанию NIST P-521/secp521r1. |
| ECDiffieHellmanOpenSsl(ECCurve) |
Инициализирует новый экземпляр ECDiffieHellmanOpenSsl класса и создает новый ключ для указанной кривой. |
| ECDiffieHellmanOpenSsl(Int32) |
Инициализирует новый экземпляр класса по умолчанию для первичной кривой ECDiffieHellmanOpenSsl NIST указанного размера. |
| ECDiffieHellmanOpenSsl(IntPtr) |
Инициализирует новый экземпляр класса из существующего ECDiffieHellmanOpenSsl ключа OpenSSL, представленного как . |
| ECDiffieHellmanOpenSsl(SafeEvpPKeyHandle) |
Инициализирует новый экземпляр класса из существующего ECDiffieHellmanOpenSsl ключа OpenSSL, представленного как . |
Поля
| Имя | Описание |
|---|---|
| KeySizeValue |
Представляет размер в битах модуля ключа, используемого асимметричным алгоритмом. (Унаследовано от AsymmetricAlgorithm) |
| LegalKeySizesValue |
Указывает размеры ключей, поддерживаемые асимметричным алгоритмом. (Унаследовано от AsymmetricAlgorithm) |
Свойства
| Имя | Описание |
|---|---|
| KeyExchangeAlgorithm |
Возвращает имя алгоритма обмена ключами. (Унаследовано от ECDiffieHellman) |
| KeySize |
Возвращает или задает размер в битах модуля ключа, используемого асимметричным алгоритмом. (Унаследовано от AsymmetricAlgorithm) |
| LegalKeySizes |
Возвращает размеры ключей, поддерживаемые асимметричным алгоритмом. (Унаследовано от AsymmetricAlgorithm) |
| PublicKey |
Получает открытый ключ, который может использоваться другим ECDiffieHellman объектом для создания соглашения общего секрета. |
| SignatureAlgorithm |
Возвращает имя алгоритма подписи. (Унаследовано от ECDiffieHellman) |
Методы
| Имя | Описание |
|---|---|
| Clear() |
Освобождает все ресурсы, используемые классом AsymmetricAlgorithm . (Унаследовано от AsymmetricAlgorithm) |
| DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[]) |
Выполняет производный ключ с помощью заданного хэш-алгоритма с необязательными предварительно заданными или добавленными данными. |
| DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[]) |
При реализации в производном классе выполняет производные ключи с помощью заданного хэш-алгоритма с необязательными предварительно заданными или добавленными данными. (Унаследовано от ECDiffieHellman) |
| DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName) |
Выполняет производный ключ с помощью указанного хэш-алгоритма. (Унаследовано от ECDiffieHellman) |
| DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[], Byte[]) |
Выполняет производный ключ с помощью указанного алгоритма HMAC (код проверки подлинности на основе хэша) с необязательными предварительно заданными или добавленными данными. |
| DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[], Byte[]) |
При реализации в производном классе выполняет производные ключи с помощью указанного алгоритма HMAC (хэш-код проверки подлинности сообщений) с необязательными предварительно заданными или добавленными данными. (Унаследовано от ECDiffieHellman) |
| DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[]) |
Выполняет производный ключ с помощью заданного алгоритма HMAC (код проверки подлинности на основе хэша). (Унаследовано от ECDiffieHellman) |
| DeriveKeyMaterial(ECDiffieHellmanPublicKey) |
Выполняет производный ключ от общего секрета. |
| DeriveKeyMaterial(ECDiffieHellmanPublicKey) |
При реализации в производном классе выполняет производный ключ от общего секрета. (Унаследовано от ECDiffieHellman) |
| DeriveKeyTls(ECDiffieHellmanPublicKey, Byte[], Byte[]) |
Выполняет производный ключ с помощью ПРОТОКОЛА TLS (транспортная безопасность) 1.1 PRF (функцияPseudo-Random). |
| DeriveKeyTls(ECDiffieHellmanPublicKey, Byte[], Byte[]) |
При реализации в производном классе выполняет производный ключ с помощью протокола TLS (transport Layer Security) 1.1 PRF (функцияPseudo-Random). (Унаследовано от ECDiffieHellman) |
| DeriveRawSecretAgreement(ECDiffieHellmanPublicKey) |
Производный сырьевой материал. (Унаследовано от ECDiffieHellman) |
| Dispose() |
Освобождает все ресурсы, используемые текущим экземпляром класса AsymmetricAlgorithm. (Унаследовано от AsymmetricAlgorithm) |
| Dispose(Boolean) |
Освобождает неуправляемые ресурсы, используемые классом AsymmetricAlgorithm , и при необходимости освобождает управляемые ресурсы. (Унаследовано от AsymmetricAlgorithm) |
| DuplicateKeyHandle() |
SafeEvpPKeyHandle Возвращает представление криптографического ключа. |
| Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
| ExportECPrivateKey() |
Экспортирует текущий ключ в формате ECPrivateKey. (Унаследовано от ECDiffieHellman) |
| ExportECPrivateKeyPem() |
Экспортирует текущий ключ в формате ECPrivateKey в кодировке PEM. (Унаследовано от ECAlgorithm) |
| ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters) |
Экспортирует текущий ключ в формате PKCS#8 EncryptedPrivateKeyInfo с паролем на основе байтов. (Унаследовано от AsymmetricAlgorithm) |
| ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters) |
Экспортирует текущий ключ в формате PKCS#8 EncryptedPrivateKeyInfo с паролем на основе символов. (Унаследовано от AsymmetricAlgorithm) |
| ExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Byte>, PbeParameters) |
Экспортирует текущий ключ в формате PKCS#8 EncryptedPrivateKeyInfo с паролем на основе байтов, закодированным PEM. (Унаследовано от AsymmetricAlgorithm) |
| ExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Char>, PbeParameters) |
Экспортирует текущий ключ в формате PKCS#8 EncryptedPrivateKeyInfo с паролем на основе символов, закодированным PEM. (Унаследовано от AsymmetricAlgorithm) |
| ExportExplicitParameters(Boolean) |
Экспортирует данные открытого или открытого и закрытого ключа с помощью явной формы кривой из текущего ключа в ECParameters структуру, чтобы она была передана методу ImportParameters(ECParameters) . |
| ExportParameters(Boolean) |
Экспортирует ключ, используемый ECCurve объектом в ECParameters объект. |
| ExportPkcs8PrivateKey() |
Экспортирует текущий ключ в формате PKCS#8 PrivateKeyInfo. (Унаследовано от AsymmetricAlgorithm) |
| ExportPkcs8PrivateKeyPem() |
Экспортирует текущий ключ в формате PKCS#8 PrivateKeyInfo, закодированный PEM. (Унаследовано от AsymmetricAlgorithm) |
| ExportSubjectPublicKeyInfo() |
Экспортирует часть открытого ключа текущего ключа в формате X.509 SubjectPublicKeyInfo. (Унаследовано от AsymmetricAlgorithm) |
| ExportSubjectPublicKeyInfoPem() |
Экспортирует часть открытого ключа текущего ключа в формате X.509 SubjectPublicKeyInfo в кодировке PEM. (Унаследовано от AsymmetricAlgorithm) |
| FromXmlString(String) |
Этот метод вызывается во всех случаях. (Унаследовано от ECDiffieHellman) |
| GenerateKey(ECCurve) |
Создает новую эфемерную пару открытого и закрытого ключа для указанной кривой. |
| GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| ImportECPrivateKey(ReadOnlySpan<Byte>, Int32) |
Импортирует открытый или закрытый ключ из структуры ECPrivateKey, заменив ключи для этого объекта. (Унаследовано от ECDiffieHellman) |
| ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Int32) |
Импортирует открытый или закрытый ключ из структуры PKCS#8 EncryptedPrivateKeyInfo после расшифровки с помощью пароля на основе байтов, заменив ключи для этого объекта. (Унаследовано от ECDiffieHellman) |
| ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, ReadOnlySpan<Byte>, Int32) |
Импортирует открытый или закрытый ключ из структуры PKCS#8 EncryptedPrivateKeyInfo после расшифровки с помощью пароля на основе символов, заменив ключи для этого объекта. (Унаследовано от ECDiffieHellman) |
| ImportFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Byte>) |
Импортирует зашифрованный закрытый ключ в кодировке RFC 7468 PEM, заменив ключи для этого объекта. (Унаследовано от ECDiffieHellman) |
| ImportFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Char>) |
Импортирует зашифрованный закрытый ключ в кодировке RFC 7468 PEM, заменив ключи для этого объекта. (Унаследовано от ECDiffieHellman) |
| ImportFromPem(ReadOnlySpan<Char>) |
Импортирует ключ в кодировке PEM RFC 7468, заменив ключи для этого объекта. (Унаследовано от ECDiffieHellman) |
| ImportParameters(ECParameters) |
Импортирует указанные параметры объекта ECCurve в качестве ключа в текущий экземпляр. |
| ImportPkcs8PrivateKey(ReadOnlySpan<Byte>, Int32) |
Импортирует открытый или закрытый ключ из структуры PKCS#8 PrivateKeyInfo после расшифровки, заменив ключи для этого объекта. (Унаследовано от ECDiffieHellman) |
| ImportSubjectPublicKeyInfo(ReadOnlySpan<Byte>, Int32) |
Импортирует открытый ключ из структуры SubjectPublicKeyInfo X.509 после расшифровки, заменив ключи для этого объекта. (Унаследовано от ECDiffieHellman) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
| ToXmlString(Boolean) |
Этот метод вызывается во всех случаях. (Унаследовано от ECDiffieHellman) |
| TryExportECPrivateKey(Span<Byte>, Int32) |
Пытается экспортировать текущий ключ в |
| TryExportECPrivateKeyPem(Span<Char>, Int32) |
Пытается экспортировать текущий ключ в формате ECPrivateKey с кодировкой PEM в предоставленный буфер. (Унаследовано от ECAlgorithm) |
| TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters, Span<Byte>, Int32) |
Пытается экспортировать текущий ключ в формате PKCS#8 EncryptedPrivateKeyInfo в предоставленный буфер с помощью пароля на основе байтов. (Унаследовано от ECDiffieHellman) |
| TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters, Span<Byte>, Int32) |
Пытается экспортировать текущий ключ в формате PKCS#8 EncryptedPrivateKeyInfo в предоставленный буфер, используя пароль на основе символов. (Унаследовано от ECDiffieHellman) |
| TryExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Byte>, PbeParameters, Span<Char>, Int32) |
Пытается экспортировать текущий ключ в формате PKCS#8 EncryptedPrivateKeyInfo с паролем на основе байтов, закодированным PEM. (Унаследовано от AsymmetricAlgorithm) |
| TryExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Char>, PbeParameters, Span<Char>, Int32) |
Экспортирует текущий ключ в формате PKCS#8 EncryptedPrivateKeyInfo с паролем на основе символов, закодированным PEM. (Унаследовано от AsymmetricAlgorithm) |
| TryExportPkcs8PrivateKey(Span<Byte>, Int32) |
Пытается экспортировать текущий ключ в формате PKCS#8 PrivateKeyInfo в предоставленный буфер. (Унаследовано от ECDiffieHellman) |
| TryExportPkcs8PrivateKeyPem(Span<Char>, Int32) |
Пытается экспортировать текущий ключ в формате PKCS#8 PrivateKeyInfo в предоставленный буфер. (Унаследовано от AsymmetricAlgorithm) |
| TryExportSubjectPublicKeyInfo(Span<Byte>, Int32) |
Пытается экспортировать текущий ключ в формате SubjectPublicKeyInfo X.509 в предоставленный буфер. (Унаследовано от ECDiffieHellman) |
| TryExportSubjectPublicKeyInfoPem(Span<Char>, Int32) |
Пытается экспортировать текущий ключ в формате X.509 SubjectPublicKeyInfo в предоставленный буфер. (Унаследовано от AsymmetricAlgorithm) |