2014-10-26 2 views
1

Я работал над побитовыми операторами, а затем пытался кодировать некоторый текст с помощью оператора XOR. Он работает, но зашифрованный текст не отображается на richTextBox. Исследовали кодировки, но до сих пор я никуда не денусь.C# XOR Зашифрованный текст не показан на RichTextBox

Код работает, когда я не использую какой-либо элемент управления и не использую строки.

string computehash(string text, string pass) 
    { 
     string encrypted = null; 
     for (int i = 0; i < text.Length; i++) 
     { 
      encrypted +=Convert.ToChar(text[i]^pass[i % pass.Length]); 
     } 
     return encrypted; 
    } 
+0

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

+0

и? что ты имел в виду ? – user1926930

+0

Я думаю, вам нужно немного разобраться в кодировке символов, прежде чем продолжить. Пожалуйста, найдите таблицу ASCII или что-то еще. –

ответ

4

Xoring числовое значение двух символов не обязательно создает символ, который может отображаться. Вероятно, вы должны «шифровать» байты, а не символы.

Отображение зашифрованных двоичных данных как hex или base64. Или, как base2, чтобы вы могли видеть XOR на работе.

 Смежные вопросы

  • Нет связанных вопросов^_^