Что это за метод шифрования? - PullRequest
0 голосов
/ 28 апреля 2020

Я нашел метод при просмотре кода, и он расшифровывает зашифрованный текст. Интересно, какой метод шифрования / дешифрования используется для этого. Любая помощь будет оценена. Спасибо.

public static string smethod_2(string stream_0, string stream_1)
        {
            string str = "";
            long num1 = checked((long)Math.Round(unchecked((double)Strings.Len(stream_0) / 2.0)));
            long num2 = 1;
            while (num2 <= num1)
            {
                int num3 = checked((int)Math.Round(Conversion.Val("&H" + Strings.Mid(stream_0, (int)(2L * num2 - 1L), 2))));
                int num4 = Strings.Asc(Strings.Mid(stream_1, checked((int)(unchecked(num2 % (long)Strings.Len(stream_1)) + 1L)), 1));
                str += Conversions.ToString(Strings.Chr(num3 ^ num4));
                checked { ++num2; }
            }
            return str;
        }

Вот метод.

smethod_2("0D5D343E203D207F6A4D2B483039333C680046522D48203832", smethod_2("68126600161113667168", "#KJKSZPJ#"));

И это пример, чтобы показать вам, как он используется.

1 Ответ

1 голос
/ 28 апреля 2020

Это простой шифр XOR с повторяющимся ключом . Функция smethod_2() принимает два аргумента. Первый - это открытый текст, представленный строкой шестнадцатеричных цифр, а второй - ключ шифрования / дешифрования. (Алгоритм является симметричным, поэтому шифрование и дешифрование выполняются с помощью одной и той же функции.) По сути, все, что он делает, это извлекает соответствующие байты из обеих строк и XOR их значения вместе, чтобы получить выходное значение ASCII (повторяя символы строки ключа как столько раз, сколько необходимо для охвата всего открытого текста)

По какой-то причине первый (2-й, 3-й и т. д. c.) байт открытого текста XORed со вторым (3-й, 4-й и т. д. c.) байт ключа. Вы должны убедиться, что результатом внутреннего вложенного вызова smethod_2("68126600161113667168", "#KJKSZPJ#") является '#X-SLAYER#', который затем становится ключом, используемым для расшифровки более длинной шестнадцатеричной строки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...