X509Certificate2.CopyWithPrivateKey Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Overloads
| CopyWithPrivateKey(SlhDsa) |
Combines a private key with a certificate containing the associated public key into a new instance that can access the private key. |
| CopyWithPrivateKey(MLDsa) |
Combines a private key with a certificate containing the associated public key into a new instance that can access the private key. |
| CopyWithPrivateKey(MLKem) |
Combines a private key with a certificate containing the associated public key into a new instance that can access the private key. |
| CopyWithPrivateKey(CompositeMLDsa) |
Combines a private key with a certificate containing the associated public key into a new instance that can access the private key. |
| CopyWithPrivateKey(ECDiffieHellman) |
Combines a private key with the public key of an ECDiffieHellman certificate to generate a new ECDiffieHellman certificate. |
CopyWithPrivateKey(SlhDsa)
Combines a private key with a certificate containing the associated public key into a new instance that can access the private key.
public:
System::Security::Cryptography::X509Certificates::X509Certificate2 ^ CopyWithPrivateKey(System::Security::Cryptography::SlhDsa ^ privateKey);
[System.Diagnostics.CodeAnalysis.Experimental("SYSLIB5006", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public System.Security.Cryptography.X509Certificates.X509Certificate2 CopyWithPrivateKey(System.Security.Cryptography.SlhDsa privateKey);
[<System.Diagnostics.CodeAnalysis.Experimental("SYSLIB5006", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
member this.CopyWithPrivateKey : System.Security.Cryptography.SlhDsa -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Function CopyWithPrivateKey (privateKey As SlhDsa) As X509Certificate2
Parameters
- privateKey
- SlhDsa
The SLH-DSA private key that corresponds to the SLH-DSA public key in this certificate.
Returns
A new certificate with the HasPrivateKey property set to true.
The current certificate isn't modified.
- Attributes
Exceptions
privateKey is null.
The specified private key doesn't match the public key for this certificate.
The certificate already has an associated private key.
Applies to
CopyWithPrivateKey(MLDsa)
- Source:
- X509Certificate2.cs
Combines a private key with a certificate containing the associated public key into a new instance that can access the private key.
public:
System::Security::Cryptography::X509Certificates::X509Certificate2 ^ CopyWithPrivateKey(System::Security::Cryptography::MLDsa ^ privateKey);
[System.Diagnostics.CodeAnalysis.Experimental("SYSLIB5006", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public System.Security.Cryptography.X509Certificates.X509Certificate2 CopyWithPrivateKey(System.Security.Cryptography.MLDsa privateKey);
[<System.Diagnostics.CodeAnalysis.Experimental("SYSLIB5006", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
member this.CopyWithPrivateKey : System.Security.Cryptography.MLDsa -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Function CopyWithPrivateKey (privateKey As MLDsa) As X509Certificate2
Parameters
- privateKey
- MLDsa
The ML-DSA private key that corresponds to the ML-DSA public key in this certificate.
Returns
A new certificate with the HasPrivateKey property set to true.
The current certificate isn't modified.
- Attributes
Exceptions
privateKey is null.
The specified private key doesn't match the public key for this certificate.
The certificate already has an associated private key.
Applies to
CopyWithPrivateKey(MLKem)
- Source:
- X509Certificate2.cs
Combines a private key with a certificate containing the associated public key into a new instance that can access the private key.
public:
System::Security::Cryptography::X509Certificates::X509Certificate2 ^ CopyWithPrivateKey(System::Security::Cryptography::MLKem ^ privateKey);
[System.Diagnostics.CodeAnalysis.Experimental("SYSLIB5006", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public System.Security.Cryptography.X509Certificates.X509Certificate2 CopyWithPrivateKey(System.Security.Cryptography.MLKem privateKey);
[<System.Diagnostics.CodeAnalysis.Experimental("SYSLIB5006", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
member this.CopyWithPrivateKey : System.Security.Cryptography.MLKem -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Function CopyWithPrivateKey (privateKey As MLKem) As X509Certificate2
Parameters
- privateKey
- MLKem
The ML-KEM private key that corresponds to the ML-KEM public key in this certificate.
Returns
A new certificate with the HasPrivateKey property set to true.
The current certificate isn't modified.
- Attributes
Exceptions
privateKey is null.
The specified private key doesn't match the public key for this certificate.
The certificate already has an associated private key.
Applies to
CopyWithPrivateKey(CompositeMLDsa)
Combines a private key with a certificate containing the associated public key into a new instance that can access the private key.
public:
System::Security::Cryptography::X509Certificates::X509Certificate2 ^ CopyWithPrivateKey(System::Security::Cryptography::CompositeMLDsa ^ privateKey);
[System.Diagnostics.CodeAnalysis.Experimental("SYSLIB5006", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public System.Security.Cryptography.X509Certificates.X509Certificate2 CopyWithPrivateKey(System.Security.Cryptography.CompositeMLDsa privateKey);
[<System.Diagnostics.CodeAnalysis.Experimental("SYSLIB5006", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
member this.CopyWithPrivateKey : System.Security.Cryptography.CompositeMLDsa -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Function CopyWithPrivateKey (privateKey As CompositeMLDsa) As X509Certificate2
Parameters
- privateKey
- CompositeMLDsa
The Composite ML-DSA private key that corresponds to the Composite ML-DSA public key in this certificate.
Returns
A new certificate with the HasPrivateKey property set to true.
The current certificate isn't modified.
- Attributes
Exceptions
privateKey is null.
The specified private key doesn't match the public key for this certificate.
The certificate already has an associated private key.
Combining a certificate and a Composite ML-DSA private key is not supported on this platform.
Applies to
CopyWithPrivateKey(ECDiffieHellman)
- Source:
- X509Certificate2.cs
- Source:
- X509Certificate2.cs
- Source:
- X509Certificate2.cs
- Source:
- X509Certificate2.cs
Combines a private key with the public key of an ECDiffieHellman certificate to generate a new ECDiffieHellman certificate.
public:
System::Security::Cryptography::X509Certificates::X509Certificate2 ^ CopyWithPrivateKey(System::Security::Cryptography::ECDiffieHellman ^ privateKey);
public System.Security.Cryptography.X509Certificates.X509Certificate2 CopyWithPrivateKey(System.Security.Cryptography.ECDiffieHellman privateKey);
member this.CopyWithPrivateKey : System.Security.Cryptography.ECDiffieHellman -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Function CopyWithPrivateKey (privateKey As ECDiffieHellman) As X509Certificate2
Parameters
- privateKey
- ECDiffieHellman
The private ECDiffieHellman key.
Returns
A new ECDiffieHellman certificate with the HasPrivateKey property set to true.
The current certificate isn't modified.
Exceptions
privateKey is null.
The certificate already has an associated private key.
The certificate doesn't have a public key.
-or-
The specified private key doesn't match the public key for this certificate.