X509Certificate.Export Method (X509ContentType)
Exports the current X509Certificate object to a byte array in a format described by one of the X509ContentType values.
Assembly: mscorlib (in mscorlib.dll)
[ComVisibleAttribute(false)] public virtual byte[] Export( X509ContentType contentType )
Parameters
- 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 |
|---|---|
| CryptographicException |
A value other than Cert, SerializedCert, or Pkcs12 was passed to the contentType parameter. -or- 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. Console.WriteLine(resultsTrue); // Get the value. string resultsFalse = newCert.ToString(false); // Display the value to the console. Console.WriteLine(resultsFalse); } }
-
KeyContainerPermission
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
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.