Безопасность шифрования Exclusive-OR (XOR)



Шифрование XOR, как известно, довольно слабое. Но насколько он слаб, если у меня есть ключ, состоящий из нескольких ключей разной (в идеале простой) длины, которые объединяются, чтобы сделать более длинный ключ. например, у меня есть текстовые клавиши длиной 5, 9 и 11. Если я просто применю первый ключ, используя шифрование XOR, то его будет легко взломать, так как байт шифрования будет повторяться каждые 5 байт. Однако если я "наложу" 3 из этих ключей, я получу эффективную неповторяющуюся длину 5*9*11 = 495. Это звучит для меня так довольно сильный. Если я использую пару стихов стихотворения, используя каждую строку в качестве ключа, то моя неповторяющаяся длина будет намного больше, чем у большинства файлов. Насколько это будет сильно (при условии, что ключ останется секретным! :))

622   3  

3 ответов:

Шифрование XOR точно так же сильно, как и поток ключей. Если вы работаете с "одноразовой клавиатурой" - последовательностью физически сгенерированных случайных чисел, которые вы используете только один раз, то ваше шифрование теоретически невозможно взломать. Однако у вас есть проблема со скрытием и распространением ключа.

Итак, ваш вопрос сводится к следующему: "насколько безопасным / случайным является ключевой поток, состоящий из трех текстовых строк?"Ответ:" не очень безопасно вообще". Возможно, достаточно хороша, чтобы не подпускать к себе твою младшую сестру, но нет. обязательно, если у тебя есть такая умная сестренка, как у меня.

Как насчет атаки "известного открытого текста"? Если вы знаете зашифрованную и открытую версии одной и той же строки, вы можете получить ключ.

Http://en.wikipedia.org/wiki/XOR_cipher

Http://en.wikipedia.org/wiki/Known-plaintext_attack

Http://en.wikipedia.org/wiki/Stream_cipher_attack

Если P и Q - два независимых криптографических метода, то составная криптографическая функция P(Q(x)) не будет слабее, чем более сильная из P(x) или Q (x), но и не обязательно будет значимо сильнее. Для того чтобы составная криптографическая функция приобрела какую-либо прочность, входящие в нее операции должны соответствовать определенным критериям. Комбинирование слабых шифров произвольно, независимо от того, сколько их используется, вряд ли даст сильный шифр.

Comments

    Ничего не найдено.