AsymmetricAlgorithm.ImportEncryptedPkcs8PrivateKey Método

Definición

Sobrecargas

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

Cuando se reemplaza en una clase derivada, importa el par de claves pública/privada desde una estructura EncryptedPrivateKeyInfo de PKCS#8 después de descifrar con una contraseña basada en bytes, reemplazando las claves de este objeto.When overridden in a derived class, imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a byte-based password, replacing the keys for this object.

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

Cuando se reemplaza en una clase derivada, importa el par de claves pública/privada desde una estructura EncryptedPrivateKeyInfo de PKCS#8 después de descifrar con una contraseña basada en caracteres, reemplazando las claves de este objeto.When overridden in a derived class, imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a char-based password, replacing the keys for this object.

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

Cuando se reemplaza en una clase derivada, importa el par de claves pública/privada desde una estructura EncryptedPrivateKeyInfo de PKCS#8 después de descifrar con una contraseña basada en bytes, reemplazando las claves de este objeto.When overridden in a derived class, imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a byte-based password, replacing the keys for this object.

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)

Parámetros

passwordBytes
ReadOnlySpan<Byte>

Bytes que se van a usar como contraseña al descifrar el material de clave.The bytes to use as a password when decrypting the key material.

source
ReadOnlySpan<Byte>

Bytes de una estructura EncryptedPrivateKeyInfo de PKCS#8 en la codificación ASN.1-BER.The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.

bytesRead
Int32

El resultado que devuelve este método contiene un valor que indica el número de bytes leídos de source.When this method returns, contains a value that indicates the number of bytes read from source. Este parámetro se trata como sin inicializar.This parameter is treated as uninitialized.

Excepciones

La contraseña es incorrecta.The password is incorrect.

O bien-or-

El contenido de source indica que la función de derivación de claves (KDF) que se va a aplicar es la heredada de PKCS#12, que requiere contraseñas basadas en Char.The contents of source indicate the Key Derivation Function (KDF) to apply is the legacy PKCS#12 KDF, which requires Char-based passwords.

O bien-or-

El contenido de source no representa una estructura EncryptedPrivateKeyInfo de PKCS#8 codificada con ASN.1-BER.The contents of source do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.

O bien-or-

El contenido de source indica que la clave es para un algoritmo distinto del algoritmo que representa esta instancia.The contents of source indicate the key is for an algorithm other than the algorithm represented by this instance.

O bien-or-

El contenido de source representa la clave en un formato que no se admite.The contents of source represent the key in a format that is not supported.

O bien-or-

No se ha podido importar la clave específica del algoritmo.The algorithm-specific key import failed.

Un tipo derivado no ha reemplazado este miembro.A derived type has not overriden this member.

Comentarios

Los bytes de contraseña se pasan directamente a la función de derivación de claves (KDF) que usa el algoritmo indicado por pbeParameters .The password bytes are passed directly into the Key Derivation Function (KDF) used by the algorithm indicated by pbeParameters. Esto permite la compatibilidad con otros sistemas que usan una codificación de texto distinta de UTF-8 al procesar contraseñas con PBKDF2 (función de derivación de claves basada en contraseña 2).This enables compatibility with other systems which use a text encoding other than UTF-8 when processing passwords with PBKDF2 (Password-Based Key Derivation Function 2).

Este método solo admite la codificación binaria (BER/CER/DER) de EncryptedPrivateKeyInfo.This method only supports the binary (BER/CER/DER) encoding of EncryptedPrivateKeyInfo. Si el valor está codificado en base64 o en el formato de texto PEM, el autor de la llamada debe descodificar en Base64 el contenido antes de llamar a este método.If the value is Base64-encoded or in the PEM text format, the caller must Base64-decode the contents before calling this method.

Dado que se requiere compatibilidad específica del algoritmo para interpretar el contenido de este formato de datos, ImportEncryptedPkcs8PrivateKey produce de NotImplementedException forma predeterminada una excepción.Because algorithm-specific support is required to interpret the contents of this data format, ImportEncryptedPkcs8PrivateKey throws a NotImplementedException by default.

Se aplica a

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

Cuando se reemplaza en una clase derivada, importa el par de claves pública/privada desde una estructura EncryptedPrivateKeyInfo de PKCS#8 después de descifrar con una contraseña basada en caracteres, reemplazando las claves de este objeto.When overridden in a derived class, imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a char-based password, replacing the keys for this object.

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)

Parámetros

password
ReadOnlySpan<Char>

Contraseña que se va a usar para descifrar el material de clave.The password to use for decrypting the key material.

source
ReadOnlySpan<Byte>

Bytes de una estructura EncryptedPrivateKeyInfo de PKCS#8 en la codificación ASN.1-BER.The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.

bytesRead
Int32

El resultado que devuelve este método contiene un valor que indica el número de bytes leídos de source.When this method returns, contains a value that indicates the number of bytes read from source. Este parámetro se trata como sin inicializar.This parameter is treated as uninitialized.

Excepciones

La contraseña es incorrecta.The password is incorrect.

O bien-or-

El contenido de source no representa una estructura EncryptedPrivateKeyInfo de PKCS#8 codificada con ASN.1-BER.The contents of source do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.

O bien-or-

El contenido de source indica que la clave es para un algoritmo distinto del algoritmo que representa esta instancia.The contents of source indicate the key is for an algorithm other than the algorithm represented by this instance.

O bien-or-

El contenido de source representa la clave en un formato que no se admite.The contents of source represent the key in a format that is not supported.

O bien-or-

No se ha podido importar la clave específica del algoritmo.The algorithm-specific key import failed.

Un tipo derivado no ha reemplazado este miembro.A derived type has not overriden this member.

Comentarios

Cuando el contenido de source indica un algoritmo que usa del pbkdf1 (función de derivación de claves basada en contraseña 1) o PBKDF2 (función de derivación de clave basada en contraseña 2), la contraseña se convierte en bytes a través de la codificación UTF-8.When the contents of source indicate an algorithm that uses PBKDF1 (Password-Based Key Derivation Function 1) or PBKDF2 (Password-Based Key Derivation Function 2), the password is converted to bytes via the UTF-8 encoding.

Este método solo admite la codificación binaria (BER/CER/DER) de EncryptedPrivateKeyInfo.This method only supports the binary (BER/CER/DER) encoding of EncryptedPrivateKeyInfo. Si el valor está codificado en base64 o en el formato de texto PEM, el autor de la llamada debe descodificar en Base64 el contenido antes de llamar a este método.If the value is Base64-encoded or in the PEM text format, the caller must Base64-decode the contents before calling this method.

Dado que se requiere compatibilidad específica del algoritmo para interpretar el contenido de este formato de datos, ImportEncryptedPkcs8PrivateKey produce de NotImplementedException forma predeterminada una excepción.Because algorithm-specific support is required to interpret the contents of this data format, ImportEncryptedPkcs8PrivateKey throws a NotImplementedException by default.

Se aplica a