我有一个PEM公钥,我想转换成XML格式的公钥或AsymmetricKeyParameter。
我可以将pem私钥转换为public/private xml格式,或者使用c_中bouncycastle中的pemreader将asymmetrickeyparameter转换为asymmetrickeyparameter。但是在pemreader中使用pem公钥时,我会收到错误。
请帮帮我。
还有什么办法解决我的问题?
最佳答案
这应该是你想用弹跳弹壳做的。
依赖项:
using Org.BouncyCastle.Crypto;
using Org.BouncyCastle.Crypto.Parameters;
using Org.BouncyCastle.OpenSsl;
using Org.BouncyCastle.Security;
要从PEM转换为RSA XML格式的代码:
StreamReader reader = new StreamReader("yourPrivateKey.pem");
PemReader pemReader = new PemReader(reader);
AsymmetricCipherKeyPair keyPair = (AsymmetricCipherKeyPair)pemReader.ReadObject();
AsymmetricKeyParameter privateKey = keyPair.Private;
RSA rsa = DotNetUtilities.ToRSA((RsaPrivateCrtKeyParameters) privateKey);
string xmlRsa = rsa.ToXmlString(true);
Console.WriteLine(xmlRsa);