我有以下方法,可以读取XML格式的私钥。
private RSAParameters GetPrivateKey(string privateKeyPath)
{
RSAParameters privateKey;
string readContents;
using (StreamReader streamReader = new StreamReader(privateKeyPath, Encoding.UTF8))
{
readContents = streamReader.ReadToEnd();
}
using (var rsa = new RSACryptoServiceProvider(2048))
{
rsa.FromXmlString(readContents);
privateKey = rsa.ExportParameters(true);
}
return privateKey;
}
我想将该方法更改为PEM格式的私钥。
我的私钥如下:
-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCAQEAuc7/6TDyberFapcC2XfXKXzF2W8IxfgVXigduvE6B0IQBfxD
J1WcWrNriERUsMpKw/2zphxIXHLrsMZ0l5FcxuZBEqtjSskMqOaMKitMfuZBrcaX
e/0W9HUgPEUBNEv35UHtZbInk7K72KEYaTkoxmI8pP/g82lWnGPw1HgjtFWbL9Vx
--8<-----------8<------------8<-----------8<-----------8<-------
SQBBCQKBgQCaOvc8cmtR8vm8HWKJ93qA0OFmUNcW5Rd32q5Zy2FSFfhODnajP7fE
kqOL1+QS4uxd5e35PCkhYVZkAigKt+I+Mx+M14HLyx6gdeU1fXJGh/LltyWM9cra
Rb059rp8d/1c128t7WdCctAcV09PDVbV8T7xVtr7agBLM47LbgL1QQ==
-----END RSA PRIVATE KEY-----
我认为在RSCryptoServiceProvider类文档中可以很容易找到它:
但不是。
FromXmlString方法记录为“从XML初始化RSA对象”,我希望看到与“从PEM初始化RSA对象”类似的方法。
[编辑]
我尝试使用此解决方案:
https://stackoverflow.com/a/32243171/192044
但是它给出了这个错误: