Поделиться через


ECDsa.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)

Импортирует пару из открытого и закрытого ключей из структуры PKCS#8 EncryptedPrivateKeyInfo после расшифровки с помощью пароля на основе байтов, заменяя ключи для этого объекта.

public:
 override void ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<System::Byte> passwordBytes, ReadOnlySpan<System::Byte> source, [Runtime::InteropServices::Out] int % bytesRead);
public override void ImportEncryptedPkcs8PrivateKey (ReadOnlySpan<byte> passwordBytes, ReadOnlySpan<byte> source, out int bytesRead);
override this.ImportEncryptedPkcs8PrivateKey : ReadOnlySpan<byte> * ReadOnlySpan<byte> * int -> unit
Public Overrides 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), используемую алгоритмом, указанным в содержимом EncryptedPrivateKeyInfo. Это обеспечивает совместимость с другими системами, которые используют кодировку текста, отличающуюся от UTF-8, при обработке паролей с помощью PBKDF2 (функция производного ключа на основе пароля 2). Этот метод поддерживает только двоичную кодировку EncryptedPrivateKeyInfo (BER/CER/DER). Если значение имеет кодировку Base64 или в текстовом формате PEM, вызывающий объект должен декодировать содержимое в Base64 перед вызовом этого метода.

Применяется к

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

Импортирует пару из открытого и закрытого ключей из структуры PKCS#8 EncryptedPrivateKeyInfo после расшифровки с помощью пароля на основе символов, заменяя ключи для этого объекта.

public:
 override void ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<char> password, ReadOnlySpan<System::Byte> source, [Runtime::InteropServices::Out] int % bytesRead);
public override void ImportEncryptedPkcs8PrivateKey (ReadOnlySpan<char> password, ReadOnlySpan<byte> source, out int bytesRead);
override this.ImportEncryptedPkcs8PrivateKey : ReadOnlySpan<char> * ReadOnlySpan<byte> * int -> unit
Public Overrides 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 (функция наследования ключа на основе пароля 1) или PBKDF2 (функция наследования ключа на основе пароля 2), пароль преобразуется в байты с помощью кодировки UTF-8. Этот метод поддерживает только двоичную кодировку EncryptedPrivateKeyInfo (BER/CER/DER). Если значение имеет кодировку Base64 или в текстовом формате PEM, вызывающий объект должен декодировать содержимое в Base64 перед вызовом этого метода.

Применяется к