AsymmetricAlgorithm.TryExportEncryptedPkcs8PrivateKey Método

Definición

Sobrecargas

TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters, Span<Byte>, Int32)

Cuando se reemplaza en una clase derivada, intenta exportar la clave actual en el formato EncryptedPrivateKeyInfo de PKCS#8 a un búfer proporcionado, utilizando una contraseña basada en bytes.When overridden in a derived class, attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a byte-based password.

TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters, Span<Byte>, Int32)

Cuando se reemplaza en una clase derivada, intenta exportar la clave actual en el formato EncryptedPrivateKeyInfo de PKCS#8 a un búfer proporcionado, utilizando una contraseña basada en caracteres.When overriden in a derived class, attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a char-based password.

TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters, Span<Byte>, Int32)

Cuando se reemplaza en una clase derivada, intenta exportar la clave actual en el formato EncryptedPrivateKeyInfo de PKCS#8 a un búfer proporcionado, utilizando una contraseña basada en bytes.When overridden in a derived class, attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a byte-based password.

public:
 virtual bool TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<System::Byte> passwordBytes, System::Security::Cryptography::PbeParameters ^ pbeParameters, Span<System::Byte> destination, [Runtime::InteropServices::Out] int % bytesWritten);
public virtual bool TryExportEncryptedPkcs8PrivateKey (ReadOnlySpan<byte> passwordBytes, System.Security.Cryptography.PbeParameters pbeParameters, Span<byte> destination, out int bytesWritten);
abstract member TryExportEncryptedPkcs8PrivateKey : ReadOnlySpan<byte> * System.Security.Cryptography.PbeParameters * Span<byte> * int -> bool
override this.TryExportEncryptedPkcs8PrivateKey : ReadOnlySpan<byte> * System.Security.Cryptography.PbeParameters * Span<byte> * int -> bool
Public Overridable Function TryExportEncryptedPkcs8PrivateKey (passwordBytes As ReadOnlySpan(Of Byte), pbeParameters As PbeParameters, destination As Span(Of Byte), ByRef bytesWritten As Integer) As Boolean

Parámetros

passwordBytes
ReadOnlySpan<Byte>

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

pbeParameters
PbeParameters

Parámetros de cifrado basados en contraseña (PBE) que se van a usar al cifrar el material de clave.The password-based encryption (PBE) parameters to use when encrypting the key material.

destination
Span<Byte>

Intervalo de bytes que va a recibir los datos de EncryptedPrivateKeyInfo de PKCS#8.The byte span to receive the PKCS#8 EncryptedPrivateKeyInfo data.

bytesWritten
Int32

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

Devoluciones

Boolean

true si destination es lo suficientemente grande como para recibir la salida; en caso contrario, false.true if destination is big enough to receive the output; otherwise, false.

Excepciones

No se ha podido exportar la clave.The key could not be exported.

O bien-or-

pbeParameters indica que debe usarse TripleDes3KeyPkcs12, el cual requiere contraseñas basadas en Char.pbeParameters indicates that TripleDes3KeyPkcs12 should be used, which requires Char-based passwords.

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

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

Consulte también

Se aplica a

TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters, Span<Byte>, Int32)

Cuando se reemplaza en una clase derivada, intenta exportar la clave actual en el formato EncryptedPrivateKeyInfo de PKCS#8 a un búfer proporcionado, utilizando una contraseña basada en caracteres.When overriden in a derived class, attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a char-based password.

public:
 virtual bool TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<char> password, System::Security::Cryptography::PbeParameters ^ pbeParameters, Span<System::Byte> destination, [Runtime::InteropServices::Out] int % bytesWritten);
public virtual bool TryExportEncryptedPkcs8PrivateKey (ReadOnlySpan<char> password, System.Security.Cryptography.PbeParameters pbeParameters, Span<byte> destination, out int bytesWritten);
abstract member TryExportEncryptedPkcs8PrivateKey : ReadOnlySpan<char> * System.Security.Cryptography.PbeParameters * Span<byte> * int -> bool
override this.TryExportEncryptedPkcs8PrivateKey : ReadOnlySpan<char> * System.Security.Cryptography.PbeParameters * Span<byte> * int -> bool
Public Overridable Function TryExportEncryptedPkcs8PrivateKey (password As ReadOnlySpan(Of Char), pbeParameters As PbeParameters, destination As Span(Of Byte), ByRef bytesWritten As Integer) As Boolean

Parámetros

password
ReadOnlySpan<Char>

Contraseña que se va a usar al cifrar el material de clave.The password to use when encrypting the key material.

pbeParameters
PbeParameters

Parámetros de cifrado basados en contraseña (PBE) que se van a usar al cifrar el material de clave.The password-based encryption (PBE) parameters to use when encrypting the key material.

destination
Span<Byte>

Intervalo de bytes que va a recibir los datos de EncryptedPrivateKeyInfo de PKCS#8.The byte span to receive the PKCS#8 EncryptedPrivateKeyInfo data.

bytesWritten
Int32

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

Devoluciones

Boolean

true si destination es lo suficientemente grande como para recibir la salida; en caso contrario, false.true if destination is big enough to receive the output; otherwise, false.

Excepciones

No se ha podido exportar la clave.The key could not be exported.

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

Comentarios

Cuando pbeParameters indica un algoritmo que usa PBKDF2 (función de derivación de claves basada en contraseña 2), la contraseña se convierte en bytes a través de la codificación UTF-8.When pbeParameters indicates an algorithm that uses PBKDF2 (Password-Based Key Derivation Function 2), the password is converted to bytes via the UTF-8 encoding.

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

Consulte también

Se aplica a