X509Certificate.Export Method (X509ContentType)


Exports the current X509Certificate object to a byte array in a format described by one of the X509ContentType values.

Namespace:   System.Security.Cryptography.X509Certificates
Assembly:  mscorlib (in mscorlib.dll)

public virtual byte[] Export(
	X509ContentType contentType


Type: System.Security.Cryptography.X509Certificates.X509ContentType

One of the X509ContentType values that describes how to format the output data.

Return Value

Type: System.Byte[]

An array of bytes that represents the current X509Certificate object.

Exception Condition

A value other than Cert, SerializedCert, or Pkcs12 was passed to the contentType parameter.


The certificate could not be exported.

The contentType parameter accepts only the following values of the X509ContentType enumeration: Cert, SerializedCert, and Pkcs12. Passing any other value causes a CryptographicException to be thrown.

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

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

        // Display the value to the console.




for permission to open a key container and export a certificate when you pass the SerializedCert value to the contentType parameter. Security action: Demand. Associated enumerations: KeyContainerPermissionFlags.Open, KeyContainerPermissionFlags.Export

.NET Framework
Available since 2.0
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Return to top