повтор в зашифрованных данных - красный флаг? - PullRequest
1 голос
/ 04 февраля 2011

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

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

Ответы [ 3 ]

6 голосов
/ 05 февраля 2011

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

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

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

0 голосов
/ 04 февраля 2011

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

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

0 голосов
/ 04 февраля 2011

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

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

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

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

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

...