Повтор в зашифрованных данных - красный флаг?

У меня есть зашифрованные данные в кодировке Base-64, и я заметил довольно много повторений. В (приблизительно) 200-символьной строке определенный символ base-64 повторяется до 7 раз в нескольких отдельных повторных циклах.

Это красный флаг, что проблема в шифровании? Насколько я понимаю, зашифрованные данные никогда не должны показывать значительного повторения, даже если открытый текст полностью однороден (т.е. даже если я зашифрую 2 ГБ ничего, кроме буквы A, в зашифрованной версии не должно быть значительного повторения).

3 ответа

Решение

Согласно биномиальному распределению, вероятность того, что один персонаж из набора из 64 появится семь раз в серии из 200 случайных символов, составляет около 2,5%. Это небольшой шанс, но не незначительный. Получив больше информации, вы можете повысить свою уверенность с 97,5% до чего-то очень близкого к 100%... или обнаружить, что зашифрованный текст действительно распределен равномерно.

Вы говорите, что "персонаж повторяется до 7 раз" в нескольких повторяющихся сериях. Недостаточно информации, чтобы сказать, имеет ли смещение зашифрованный текст. Вместо этого, сообщите нам общее количество раз, когда появился символ, и общее количество символов шифрованного текста. Например, "оно появилось в общей сложности 3125 раз за 1000 запусков по 200 символов в каждом".

Кроме того, вы должны быть уверены, что говорите о необработанном выводе шифра. Зашифрованный текст часто инкапсулируется в "конверт", подобный тому, который определен синтаксисом криптографических сообщений. Конечно, эта ограждающая структура будет иметь предсказуемые закономерности.

Ну, я думаю, это зависит. Повторение вообще плохо, если оно представляет одни и те же данные.

Учитывая, что вы кодируете это, вы смотрели на данные, чтобы увидеть, есть ли у вас что-то, что повторяется в этих подсчетах?

Чтобы лучше понять, нужно знать, какой тип шифрования он использует. Это может быть просто совпадение, что они повторяются.

Но если повторение происходит из одних и тех же данных, тогда это может быть красный флаг, потому что тогда для его декодирования можно использовать счетчики частоты.

Какой тип шифрования вы используете? Самодельный или какой-то отраслевой стандарт?

Это зависит от того, как вы шифруете свои данные.

Base64, кодирующая строку, может считаться легким запутыванием, но это НЕ шифрование. Цель кодирования Base64 - разрешить кодирование любых двоичных данных в виде безопасной строки ASCII.

Другие вопросы по тегам