private static X509Certificate2 GetCertificateForServer()
{
RSA privateKey = Utils.DecodeRSAKeyFromPEM(TestPrivateKey);
- X509Certificate2 privateCertificate = new X509Certificate2();
- privateCertificate.Import(Utils.DecodePEM(TestCertificate));
- privateCertificate.PrivateKey = privateKey;
+ X509Certificate2 privateCertificate = new X509Certificate2(Utils.DecodePEM(TestCertificate)).CopyWithPrivateKey(privateKey);
return privateCertificate;
}
private static X509Certificate2Collection GetCertificateForClient()
{
- X509Certificate2 publicCertificate = new X509Certificate2();
- publicCertificate.Import(Utils.DecodePEM(TestCertificate));
+ X509Certificate2 publicCertificate = new X509Certificate2(Utils.DecodePEM(TestCertificate));
X509Certificate2Collection clientCertificates = new X509Certificate2Collection();
clientCertificates.Add(publicCertificate);
return result.ToArray();
}
+ private static RSA CreateRSAProvider(RSAParameters rp)
+ {
+ RSACryptoServiceProvider rsaCsp = new RSACryptoServiceProvider();
+ rsaCsp.ImportParameters(rp);
+ return rsaCsp;
+ }
+
public static RSA DecodeRSAKeyFromPEM(string pemData)
{
PemReader pemReader = new PemReader(new StringReader(pemData));
RsaPrivateCrtKeyParameters keyParameters = (RsaPrivateCrtKeyParameters)pemReader.ReadObject();
- return DotNetUtilities.ToRSA(keyParameters);
+ return CreateRSAProvider(DotNetUtilities.ToRSAParameters(keyParameters));
}
}
}