解决 .netfm下RSACryptoServiceProvider转换为.netcore代码时 Unable to cast object of type 'RSACng' to type 'System.Security.Cryptography.RSACryptoServiceProvider'的问题

.net fm下代码

 var cer = new X509Certificate2(Resource.qxnh);
 RSACryptoServiceProvider rsa= (RSACryptoServiceProvider) cer.PublicKey.Key;

.net core下代码要稍作下修改

 var cer = new X509Certificate2(Resource.qxnh);
  var rsaParam = cer.GetRSAPublicKey().ExportParameters(false);
  var rsa= new RSACryptoServiceProvider();
  rsa.ImportParameters(rsaParam);

以上时获取公钥的代码转换,获取私钥的安装公钥的响应修改即可,有一点需要修改的,就是导出参数那里的参数需要时true。包含私有参数即可。

原文地址:https://www.cnblogs.com/Playfunny/p/13297706.html