私はC#で大きな文字列を扱っています。たとえば、私の文字列の長さは 2.000.000 文字です。この文字列を暗号化する必要があります。ハードディスクにテキストファイルとして保存する必要があります。最速かつ基本的なテキスト暗号化のために XOR を使用して暗号化しようとしましたが、それでも暗号化に時間がかかりすぎます。2.13 GHz duo CPU と 3 GB RAM で 1 時間かかります。また、ファイルの保存 (StreamWriter の Write メソッドを使用) とファイルからの読み取り (StreamReader の ReadToEnd メソッドを使用) に時間がかかりすぎます。
コード:
public static string XorText(string text)
{
string newText = "";
int key = 1;
int charValue;
for (int i = 0; i < text.Length; i++)
{
charValue = Convert.ToInt32(text[i]); //get the ASCII value of the character
charValue ^= key; //xor the value
newText += char.ConvertFromUtf32(charValue); //convert back to string
}
return newText;
}
これらの操作についてのアドバイスは何ですか?