RSACryptoServiceProvider.ToXmlString(); encoding

本文关键字:encoding ToXmlString RSACryptoServiceProvider | 更新日期: 2023-09-27 18:25:36

我使用RSA密钥创建xml字符串

var keyXmlString = rsaPrivKey.ToXmlString(true);

现在我想把字符串转换成字节,类似这样:

var xmlBytes = Encoding.Unicode.GetBytes(keyXmlString);

问题是,在将xml字符串转换为字节时,什么是正确的编码?

RSACryptoServiceProvider.ToXmlString(); encoding

这里没有"正确"的编码——这取决于谁是你的消费者。您需要使用编码,这是您的消费者所期望的。

我强烈建议做一些类似的事情

var xmlBytes = Encoding.YOURENCODINGHERE.GetBytes("<?xml version='"1.0'" encoding='"YOURENCODINGHERE'" ?>'n"+keyXmlString);

让这件事更简单。

只要编码和解码一致,使用哪种编码都无关紧要。