X509Certificate.Export Метод

Определение

Экспортирует текущий объект X509Certificate в массив байтов.Exports the current X509Certificate object to a byte array.

Перегрузки

Export(X509ContentType)

Экспортирует текущий объект X509Certificate в массив байтов в формате, описанном одним из значений X509ContentType.Exports the current X509Certificate object to a byte array in a format described by one of the X509ContentType values.

Export(X509ContentType, SecureString)

Экспортирует текущий объект X509Certificate в массив байтов с использованием заданных формата и пароля.Exports the current X509Certificate object to a byte array using the specified format and a password.

Export(X509ContentType, String)

Экспортирует текущий объект X509Certificate в массив байтов в формате, описанном одним из значений X509ContentType, с использованием заданного пароля.Exports the current X509Certificate object to a byte array in a format described by one of the X509ContentType values, and using the specified password.

Export(X509ContentType)

Экспортирует текущий объект X509Certificate в массив байтов в формате, описанном одним из значений X509ContentType.Exports the current X509Certificate object to a byte array in a format described by one of the X509ContentType values.

public:
 virtual cli::array <System::Byte> ^ Export(System::Security::Cryptography::X509Certificates::X509ContentType contentType);
[System.Runtime.InteropServices.ComVisible(false)]
public virtual byte[] Export (System.Security.Cryptography.X509Certificates.X509ContentType contentType);
abstract member Export : System.Security.Cryptography.X509Certificates.X509ContentType -> byte[]
override this.Export : System.Security.Cryptography.X509Certificates.X509ContentType -> byte[]
Public Overridable Function Export (contentType As X509ContentType) As Byte()

Параметры

contentType
X509ContentType

Одно из значений X509ContentType, описывающих способы форматирования выходных данных.One of the X509ContentType values that describes how to format the output data.

Возвращаемое значение

Byte[]

Массив байтов, представляющий текущий объект X509Certificate.An array of bytes that represents the current X509Certificate object.

Атрибуты

Исключения

Значение, отличное от Cert, SerializedCert или Pkcs12, было передано в параметр contentType.A value other than Cert, SerializedCert, or Pkcs12 was passed to the contentType parameter.

-или--or- Не удалось экспортировать сертификат.The certificate could not be exported.

Примеры

В следующем примере файл сертификата X. 509 загружается в объект X509Certificate, экспортируется сертификат в виде массива байтов, а затем массив байтов импортируется в другой объект X509Certificate.The following example loads an X.509 certificate file into an X509Certificate object, exports the certificate as a byte array, and then imports the byte array into another X509Certificate object.

using namespace System;
using namespace System::Security::Cryptography::X509Certificates;
int main()
{
   
   // The path to the certificate.
   String^ Certificate = L"test.pfx";
   
   // Load the certificate into an X509Certificate object.
   X509Certificate^ cert = gcnew X509Certificate( Certificate );
   array<Byte>^certData = cert->Export( X509ContentType::Cert );
   X509Certificate^ newCert = gcnew X509Certificate( certData );
   
   // Get the value.
   String^ resultsTrue = newCert->ToString( true );
   
   // Display the value to the console.
   Console::WriteLine( resultsTrue );
   
   // Get the value.
   String^ resultsFalse = newCert->ToString( false );
   
   // Display the value to the console.
   Console::WriteLine( resultsFalse );
}

using System;
using System.Security.Cryptography.X509Certificates;

public class X509
{

    public static void Main()
    {

        // The path to the certificate.
        string Certificate = "test.pfx";

        // Load the certificate into an X509Certificate object.
        X509Certificate cert = new X509Certificate(Certificate);

        byte[] certData = cert.Export(X509ContentType.Cert);

        X509Certificate newCert = new X509Certificate(certData);

        // Get the value.
        string resultsTrue = newCert.ToString(true);

        // Display the value to the console.
        Console.WriteLine(resultsTrue);

        // Get the value.
        string resultsFalse = newCert.ToString(false);

        // Display the value to the console.
        Console.WriteLine(resultsFalse);
    }
}
Imports System.Security.Cryptography.X509Certificates


Module X509

    Sub Main()

        ' The path to the certificate.
        Dim Certificate As String = "test.pfx"

        ' Load the certificate into an X509Certificate object.
        Dim cert As New X509Certificate(Certificate)


        Dim certData As Byte() = cert.Export(X509ContentType.Cert)

        Dim newCert As New X509Certificate(certData)

        ' Get the value.
        Dim resultsTrue As String = newCert.ToString(True)

        ' Display the value to the console.
        Console.WriteLine(resultsTrue)

        ' Get the value.
        Dim resultsFalse As String = newCert.ToString(False)

        ' Display the value to the console.
        Console.WriteLine(resultsFalse)

    End Sub
End Module

Комментарии

Параметр contentType принимает только следующие значения перечисления X509ContentType: Cert, SerializedCertи Pkcs12.The contentType parameter accepts only the following values of the X509ContentType enumeration: Cert, SerializedCert, and Pkcs12. Передача любого другого значения приводит к возникновению CryptographicException.Passing any other value causes a CryptographicException to be thrown.

Безопасность

KeyContainerPermission
разрешение на открытие контейнера ключей и экспорт сертификата при передаче значения SerializedCert в параметр contentType.for permission to open a key container and export a certificate when you pass the SerializedCert value to the contentType parameter. Действие безопасности: Demand.Security action: Demand. Связанные перечисления: Open, ExportAssociated enumerations: Open, Export

Export(X509ContentType, SecureString)

Важно!

Этот API несовместим с CLS.

Экспортирует текущий объект X509Certificate в массив байтов с использованием заданных формата и пароля.Exports the current X509Certificate object to a byte array using the specified format and a password.

public:
 virtual cli::array <System::Byte> ^ Export(System::Security::Cryptography::X509Certificates::X509ContentType contentType, System::Security::SecureString ^ password);
[System.CLSCompliant(false)]
public virtual byte[] Export (System.Security.Cryptography.X509Certificates.X509ContentType contentType, System.Security.SecureString password);
abstract member Export : System.Security.Cryptography.X509Certificates.X509ContentType * System.Security.SecureString -> byte[]
override this.Export : System.Security.Cryptography.X509Certificates.X509ContentType * System.Security.SecureString -> byte[]
Public Overridable Function Export (contentType As X509ContentType, password As SecureString) As Byte()

Параметры

contentType
X509ContentType

Одно из значений X509ContentType, описывающих способы форматирования выходных данных.One of the X509ContentType values that describes how to format the output data.

password
SecureString

Пароль для доступа к данным сертификата X.509.The password required to access the X.509 certificate data.

Возвращаемое значение

Byte[]

Массив байтов, представляющий текущий объект X509Certificate.A byte array that represents the current X509Certificate object.

Атрибуты

Исключения

Значение, отличное от Cert, SerializedCert или Pkcs12, было передано в параметр contentType.A value other than Cert, SerializedCert, or Pkcs12 was passed to the contentType parameter.

-или--or- Не удалось экспортировать сертификат.The certificate could not be exported.

Комментарии

Параметр contentType принимает только следующие значения перечисления X509ContentType: Cert, SerializedCertи Pkcs12.The contentType parameter accepts only the following values of the X509ContentType enumeration: Cert, SerializedCert, and Pkcs12. Передача любого другого значения приводит к возникновению CryptographicException.Passing any other value causes a CryptographicException to be thrown.

Важно!

Никогда не следует жестко кодировать пароль в исходном коде.Never hard code a password within your source code. Жестко запрограммированные пароли могут быть получены из сборки с помощью Ildasm. exe (ДИЗАССЕМБЛЕР IL), шестнадцатеричного редактора или путем простого открытия сборки в текстовом редакторе, например в Notepad. exe.Hard-coded passwords can be retrieved from an assembly using the Ildasm.exe (IL Disassembler), a hex editor, or by simply opening the assembly in a text editor such as Notepad.exe.

Безопасность

KeyContainerPermission
разрешение на открытие контейнера ключей и экспорт сертификата при передаче значения SerializedCert в параметр contentType.for permission to open a key container and export a certificate when you pass the SerializedCert value to the contentType parameter. Действие безопасности: Demand.Security action: Demand. Связанные перечисления: Open, ExportAssociated enumerations: Open, Export

Export(X509ContentType, String)

Экспортирует текущий объект X509Certificate в массив байтов в формате, описанном одним из значений X509ContentType, с использованием заданного пароля.Exports the current X509Certificate object to a byte array in a format described by one of the X509ContentType values, and using the specified password.

public:
 virtual cli::array <System::Byte> ^ Export(System::Security::Cryptography::X509Certificates::X509ContentType contentType, System::String ^ password);
[System.Runtime.InteropServices.ComVisible(false)]
public virtual byte[] Export (System.Security.Cryptography.X509Certificates.X509ContentType contentType, string password);
abstract member Export : System.Security.Cryptography.X509Certificates.X509ContentType * string -> byte[]
override this.Export : System.Security.Cryptography.X509Certificates.X509ContentType * string -> byte[]
Public Overridable Function Export (contentType As X509ContentType, password As String) As Byte()

Параметры

contentType
X509ContentType

Одно из значений X509ContentType, описывающих способы форматирования выходных данных.One of the X509ContentType values that describes how to format the output data.

password
String

Пароль для доступа к данным сертификата X.509.The password required to access the X.509 certificate data.

Возвращаемое значение

Byte[]

Массив байтов, представляющий текущий объект X509Certificate.An array of bytes that represents the current X509Certificate object.

Атрибуты

Исключения

Значение, отличное от Cert, SerializedCert или Pkcs12, было передано в параметр contentType.A value other than Cert, SerializedCert, or Pkcs12 was passed to the contentType parameter.

-или--or- Не удалось экспортировать сертификат.The certificate could not be exported.

Комментарии

Параметр contentType принимает только следующие значения перечисления X509ContentType: Cert, SerializedCertи Pkcs12.The contentType parameter accepts only the following values of the X509ContentType enumeration: Cert, SerializedCert, and Pkcs12. Передача любого другого значения приводит к возникновению CryptographicException.Passing any other value causes a CryptographicException to be thrown.

Важно!

Никогда не следует жестко кодировать пароль в исходном коде.Never hard code a password within your source code. Жестко запрограммированные пароли могут быть получены из сборки с помощью Ildasm. exe (ДИЗАССЕМБЛЕР IL), шестнадцатеричного редактора или путем простого открытия сборки в текстовом редакторе, например в Notepad. exe.Hard-coded passwords can be retrieved from an assembly using the Ildasm.exe (IL Disassembler), a hex editor, or by simply opening the assembly in a text editor such as Notepad.exe.

Безопасность

KeyContainerPermission
разрешение на открытие контейнера ключей и экспорт сертификата при передаче значения SerializedCert в параметр contentType.for permission to open a key container and export a certificate when you pass the SerializedCert value to the contentType parameter. Действие безопасности: Demand.Security action: Demand. Связанные перечисления: Open, ExportAssociated enumerations: Open, Export

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