2016-10-18 1 views
-4

У меня есть две строки, которые зашифрованы кодом из принятого ответа от this link. Я хочу связать их в другой строке, которая будет просто расшифровать обратно к двум оригинальным зашифрованным строкам. Я думаю, что:Простое соединение двух зашифрованных строк в C#

encrypted_string_1 + encryptedstring_2 

- плохая идея.

+2

Ваш вопрос остается неясным. Что вы пытаетесь сделать точно? Вы правы, что их конкатенация в зашифрованном виде - плохая идея. – Equalsk

+0

Код в ссылке показывает, как расшифровать. Так в чем же проблема? – Plutonix

+1

Даже если у вас есть только два * простых * текста, скажем '' AB ''и' 'C" ', и вы объединили их в' 'ABC'', как вы можете их разбить? Так как «" »и« ABC »,« A »и« BC »,« AB »и« C »,« ABC »и' '' 'возможны –

ответ

0

Если вы можете определить символ-разделитель (например, «~»), который никогда не производится в качестве вывода по методу зашифровать, то вы можете использовать это:

const char sep = '~'; 
string combined = encrypted_string_1 + sep + encryptedstring_2; 

А затем разделить его позже:

string[] parts = combined.Split(sep); 

, который затем может быть расшифрован.

Изменить:
Выход Encrypt() уже база-64 кодированная, который производит [1] ...

символы верхнего регистра "A" до "Z", символы нижнего регистра " «от» до «z», цифры от «0» до «9» и символы «+» и «/». Бесконечный символ, "=", используется для заполнения пробелов.

Таким образом, любой другой символ может использоваться как разделитель.

[1] см https://msdn.microsoft.com/en-us/library/dhx0d524(v=vs.100).aspx

+0

Downvoter, пожалуйста, объясните? –

+0

Я думаю, что это хорошая идея, но как найти разделительный символ? –

+0

Есть много на выбор, если вы конвертируете зашифрованные строки в базу 64 – Benj

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