X509Certificate2 PublicKey无法获得正确的值

时间:2015-08-03 15:00:45

标签: c# .net dns

希望你能帮助我。 我正在使用X509Certificate2和X509Store将证书(.pfx)写入X509Store。 然后我去dns并从它请求publicKey令牌,一旦它回复我看到我得到的publicKey是在Base64 wheres当我从X509Store找到正确的X509Certificate2我无法找到任何方式来表示publicKey匹配我得到的来自dns。

如何让公钥的base64表示看起来像dns?!

我已经尝试过使用: byte [] arrBytes = certificate2.GetPublicKey(); 和 byte [] arrBytes = certificate2.PublicKey.EncodedKeyValue.RawData

两者都没有给我与dns相同的base64, 还是我错过了一些东西?!

感谢您的帮助:)

1 个答案:

答案 0 :(得分:0)

在这两个主题中找到答案:

C# Export Private/Public RSA key from RSACryptoServiceProvider to PEM string

C# RSA Public Key Output Not Correct

从第二个链接获取 ExportPublicKey 功能并使用:

 string st1 = ExportPublicKey((RSACryptoServiceProvider)certificate2.PublicKey.Key);

其中certificate2是 X509商店中的 X509Certificate2 对象。 得到了我的工作! :)