RSACryptoServiceProvider.ToXmlString (); кодирование - PullRequest
0 голосов
/ 23 февраля 2012

Я создаю строку XML из моего ключа RSA:

var keyXmlString = rsaPrivKey.ToXmlString(true);

А теперь я хотел бы преобразовать строку в байты, что-то вроде этого:

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

Вопрос в том, чтобыло бы правильное кодирование для использования там при преобразовании строки XML в байты?

Ответы [ 2 ]

2 голосов
/ 23 февраля 2012

Здесь нет «правильной» кодировки - это зависит от того, кто является вашим потребителем.Вы должны использовать кодировку, которую ожидает ваш потребитель.

Я настоятельно рекомендую сделать что-то вроде

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

, чтобы сделать его более надежным.

0 голосов
/ 23 февраля 2012

Пока вы согласны с кодировкой и декодированием, действительно не имеет значения, какую кодировку вы используете.

...