X509Certificate2 Constructor (Byte, String, X509KeyStorageFlags)
Initializes a new instance of the X509Certificate2 class using a byte array, a password, and a key storage flag.
Assembly: System (in System.dll)
public X509Certificate2( byte rawData, string password, X509KeyStorageFlags keyStorageFlags )
- Type: System.Byte
A byte array containing data from an X.509 certificate.
- Type: System.String
The password required to access the X.509 certificate data.
- Type: System.Security.Cryptography.X509Certificates.X509KeyStorageFlags
A bitwise combination of the enumeration values that control where and how to import the certificate.
An error with the certificate occurs. For example:
This constructor creates a new X509Certificate2 object using a byte array, a password that is needed to access the certificate data, and a key storage flag. It is used with PKCS12 (PFX) files that contain the certificate's private key. Calling this constructor with the correct password decrypts the private key and saves it to a Microsoft Cryptographic API Cryptographic Service Provider (CSP).
Never hard code a password within your source code. Hard-coded passwords can be retrieved from an assembly using the Ildasm.exe (IL Disassembler), a hex editor, or by simply opening up the assembly in a text editor such as Notepad.exe.
If you create an X509Certificate2 certificate by specifying a PKCS7 signed file store for rawData, the X509Certificate2 is created for the certificate that signed the store rather than for any of the certificates within the store.