43 / 43 / 13
Регистрация: 17.05.2011
Сообщений: 162
|
|
1 | |
Взлом XOR12.09.2013, 15:56. Показов 3279. Ответов 3
Метки нет (Все метки)
Всем добрый день. Помогите разобрать алгоритм взлома XOR. Имею следующее описание:
1. Определим длину ключа с помощью процедуры, известной как подсчет совпадений. Применим операцию XOR к шифротексту, используя в качестве ключа сам шифротекст с различными смещениями, и подсчитаем совпадающие байты. Если величина смещения кратна длине ключа, то совпадет свыше 6 процентов байтов. Если нет, то будут совпадать меньше чем 0.4 процента (считая, что обычный ASCII текст кодируется случайным ключом, для других типов открытых текстов числа будут другими). Это называется показателем совпадений. Минимальное смещение от одного значения, кратного длине ключа, к другому и есть длина ключа. 2. Сместим шифротекст на эту длину и проведем операцию XOR для смещенного и оригинального шифротекстов. Результатом операции будет удаления ключа и получение открытого текста, подвергнутого операции b с самим собой, смещенным на длину ключа. Судя по описанию, я должен смещать зашифрованный текст на n (1<=n<=кол-во байт/2-1) байт. Далее делаю XOR исходного шифр. текста и смещенного. Считаю сколько совпадает байтов у исходного шифр. текста и полученного предыдущей операцией. Если процент совпадения > 6. Значит n кратно длине ключа. Если меньше беру след. n и заново. Смещаю исходный шифр. текст на n байт и делаю XOR исходного шифр. текста и полученного смещением на n байт. Правильно ли я понял алгоритм? Потому, что я его реализовал на С++ и он не работает, так как описание алгоритма для меня не совсем понятно, я не знаю в программе ошибка или в алгоритме, который я заложил в программу.
0
|
12.09.2013, 15:56 | |
Ответы с готовыми решениями:
3
Взлом Пентагона! Надежность XOR Взлом хэш-функции взлом шифра Виженера |
13.09.2013, 01:36 | 2 |
Рассматривайте его как вычисление корреляционной функции. Если смещение кратно периоду (длине ключа), то корреляция максимальна.
Ошибиться в двух циклах кажется затруднительным, но можете попробовать "вручную" сдвинуть один из текстов (дописав пробелы вначале, например) и проXORить файлы программой из эташа. И, кстати, поройтесь в Google - весьма вероятно, что на каком-либо из онлайновых (де)крипто-сервисов подобная проверка уже встроена. И вот здесь еще взгляните: CrypTool 2
1
|
43 / 43 / 13
Регистрация: 17.05.2011
Сообщений: 162
|
|
13.09.2013, 09:25 [ТС] | 3 |
0
|
13.09.2013, 14:10 | 4 |
Да, но если текст достаточного размера (в десятки\сотни раз больше размера ключа, как это обычно бывает), то для простоты можно использовать и линейный сдвиг.
1
|
13.09.2013, 14:10 | |
13.09.2013, 14:10 | |
Помогаю со студенческими работами здесь
4
Поиск ключа XOR Взлом шифра простой замены Взлом гаммирования (Тест Фридмана) Взлом шифра простой замены Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |