AsymmetricAlgorithm.ImportEncryptedPkcs8PrivateKey Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Перегрузки
| Имя | Описание |
|---|---|
| ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Int32) |
При переопределении в производном классе импортирует открытый и закрытый ключ из структуры PKCS#8 EncryptedPrivateKeyInfo после расшифровки паролем на основе байтов, заменив ключи для этого объекта. |
| ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, ReadOnlySpan<Byte>, Int32) |
При переопределении в производном классе импортирует открытый/закрытый ключ из структуры PKCS#8 EncryptedPrivateKeyInfo после расшифровки паролем на основе символов, заменив ключи для этого объекта. |
ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Int32)
- Исходный код:
- AsymmetricAlgorithm.cs
- Исходный код:
- AsymmetricAlgorithm.cs
- Исходный код:
- AsymmetricAlgorithm.cs
- Исходный код:
- AsymmetricAlgorithm.cs
- Исходный код:
- AsymmetricAlgorithm.cs
При переопределении в производном классе импортирует открытый и закрытый ключ из структуры PKCS#8 EncryptedPrivateKeyInfo после расшифровки паролем на основе байтов, заменив ключи для этого объекта.
public:
virtual void ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<System::Byte> passwordBytes, ReadOnlySpan<System::Byte> source, [Runtime::InteropServices::Out] int % bytesRead);
public virtual void ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<byte> passwordBytes, ReadOnlySpan<byte> source, out int bytesRead);
abstract member ImportEncryptedPkcs8PrivateKey : ReadOnlySpan<byte> * ReadOnlySpan<byte> * int -> unit
override this.ImportEncryptedPkcs8PrivateKey : ReadOnlySpan<byte> * ReadOnlySpan<byte> * int -> unit
Public Overridable Sub ImportEncryptedPkcs8PrivateKey (passwordBytes As ReadOnlySpan(Of Byte), source As ReadOnlySpan(Of Byte), ByRef bytesRead As Integer)
Параметры
- passwordBytes
- ReadOnlySpan<Byte>
Байты, которые следует использовать в качестве пароля при расшифровке материала ключа.
- source
- ReadOnlySpan<Byte>
Байты структуры PKCS#8 EncryptedPrivateKeyInfo в кодировке ASN.1-BER.
- bytesRead
- Int32
При возврате этого метода содержит значение, указывающее количество байтов, считываемых из source. Этот параметр рассматривается как неинициализированный.
Исключения
Пароль неверный.
–или–
Содержимое source указывает, что функция вывода ключей (KDF), которую необходимо применить, является устаревшим PKCS#12 KDF, для которого требуются Charпароли на основе.
–или–
Содержимое source не представляет структуру PKCS#8 EncryptedPrivateKeyInfo в кодировке ASN.1-BER.
–или–
Содержимое source указывает, что ключ предназначен для алгоритма, отличного от алгоритма, представленного этим экземпляром.
–или–
Содержимое source представляет ключ в формате, который не поддерживается.
–или–
Сбой импорта ключа для конкретного алгоритма.
Производный тип не переопределяет этот член.
Комментарии
Байты паролей передаются непосредственно в функцию вывода ключей (KDF), используемую алгоритмом, указанным в pbeParametersнем.
Это обеспечивает совместимость с другими системами, использующим кодировку текста, отличное от UTF-8 при обработке паролей с помощью PBKDF2 (функция 2Password-Based на основе ключа).
Этот метод поддерживает только двоичную кодировку (BER/CER/DER) EncryptedPrivateKeyInfo. Если значение закодировано в Кодировке Base64 или в текстовом формате PEM, вызывающий объект должен декодировать содержимое перед вызовом этого метода.
Так как для интерпретации содержимого этого формата данных требуется поддержка, связанная с алгоритмом, ImportEncryptedPkcs8PrivateKey вызывается NotImplementedException по умолчанию.
Применяется к
ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, ReadOnlySpan<Byte>, Int32)
- Исходный код:
- AsymmetricAlgorithm.cs
- Исходный код:
- AsymmetricAlgorithm.cs
- Исходный код:
- AsymmetricAlgorithm.cs
- Исходный код:
- AsymmetricAlgorithm.cs
- Исходный код:
- AsymmetricAlgorithm.cs
При переопределении в производном классе импортирует открытый/закрытый ключ из структуры PKCS#8 EncryptedPrivateKeyInfo после расшифровки паролем на основе символов, заменив ключи для этого объекта.
public:
virtual void ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<char> password, ReadOnlySpan<System::Byte> source, [Runtime::InteropServices::Out] int % bytesRead);
public virtual void ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<char> password, ReadOnlySpan<byte> source, out int bytesRead);
abstract member ImportEncryptedPkcs8PrivateKey : ReadOnlySpan<char> * ReadOnlySpan<byte> * int -> unit
override this.ImportEncryptedPkcs8PrivateKey : ReadOnlySpan<char> * ReadOnlySpan<byte> * int -> unit
Public Overridable Sub ImportEncryptedPkcs8PrivateKey (password As ReadOnlySpan(Of Char), source As ReadOnlySpan(Of Byte), ByRef bytesRead As Integer)
Параметры
- password
- ReadOnlySpan<Char>
Пароль, используемый для расшифровки материала ключа.
- source
- ReadOnlySpan<Byte>
Байты структуры PKCS#8 EncryptedPrivateKeyInfo в кодировке ASN.1-BER.
- bytesRead
- Int32
При возврате этого метода содержит значение, указывающее количество байтов, считываемых из source. Этот параметр рассматривается как неинициализированный.
Исключения
Пароль неверный.
–или–
Содержимое source не представляет структуру PKCS#8 EncryptedPrivateKeyInfo в кодировке ASN.1-BER.
–или–
Содержимое source указывает, что ключ предназначен для алгоритма, отличного от алгоритма, представленного этим экземпляром.
–или–
Содержимое source представляет ключ в формате, который не поддерживается.
–или–
Сбой импорта ключа для конкретного алгоритма.
Производный тип не переопределяет этот член.
Комментарии
Если содержимое source указывает алгоритм, использующий PBKDF1 (Password-Based функцию вывода ключей 1) или PBKDF2 (Password-Based функцию вывода ключей 2), пароль преобразуется в байты через кодировку UTF-8.
Этот метод поддерживает только двоичную кодировку (BER/CER/DER) EncryptedPrivateKeyInfo. Если значение закодировано в Кодировке Base64 или в текстовом формате PEM, вызывающий объект должен декодировать содержимое перед вызовом этого метода.
Так как для интерпретации содержимого этого формата данных требуется поддержка, связанная с алгоритмом, ImportEncryptedPkcs8PrivateKey вызывается NotImplementedException по умолчанию.