Форум программистов, компьютерный форум, киберфорум
Криптография
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.61/18: Рейтинг темы: голосов - 18, средняя оценка - 4.61
43 / 43 / 13
Регистрация: 17.05.2011
Сообщений: 162
1

Взлом XOR

12.09.2013, 15:56. Показов 3279. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем добрый день. Помогите разобрать алгоритм взлома XOR. Имею следующее описание:

1. Определим длину ключа с помощью процедуры, известной как подсчет совпадений. Применим операцию XOR к шифротексту, используя в качестве ключа сам шифротекст с различными смещениями, и подсчитаем совпадающие байты. Если величина смещения кратна длине ключа, то совпадет свыше 6 процентов байтов. Если нет, то будут совпадать меньше чем 0.4 процента (считая, что обычный ASCII текст кодируется случайным ключом, для других типов открытых текстов числа будут другими). Это называется показателем совпадений. Минимальное смещение от одного значения, кратного длине ключа, к другому и есть длина ключа.

2. Сместим шифротекст на эту длину и проведем операцию XOR для смещенного и оригинального шифротекстов. Результатом операции будет удаления ключа и получение открытого текста, подвергнутого операции b с самим собой, смещенным на длину ключа.

Судя по описанию, я должен смещать зашифрованный текст на n (1<=n<=кол-во байт/2-1) байт.
Далее делаю XOR исходного шифр. текста и смещенного.
Считаю сколько совпадает байтов у исходного шифр. текста и полученного предыдущей операцией.
Если процент совпадения > 6. Значит n кратно длине ключа. Если меньше беру след. n и заново.
Смещаю исходный шифр. текст на n байт и делаю XOR исходного шифр. текста и полученного смещением на n байт.

Правильно ли я понял алгоритм? Потому, что я его реализовал на С++ и он не работает, так как описание алгоритма для меня не совсем понятно, я не знаю в программе ошибка или в алгоритме, который я заложил в программу.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.09.2013, 15:56
Ответы с готовыми решениями:

Взлом Пентагона!
Привет. Интересует вопрос о действиях хакера(ов) против серьёзных, защищённых специалистами...

Надежность XOR
Пишу сетевую игру в жанре RTS и так получается, что данные могут быть перехвачены клиентом,...

Взлом хэш-функции
У нас есть хэш-функция, принимающая строку (UTF-8, размером до 4 KB) и возвращающая int32....

взлом шифра Виженера
Длина ключа: 4 ОПХБОЫХСЯСЫМГАТСОЫ_ТТЕЭЪС_ШЯ_О_ЮМЦШ_ЩНКЫЛВХЬЛЯП_ЭНЮФ...

3
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
13.09.2013, 01:36 2
Цитата Сообщение от Peperovich Посмотреть сообщение
Правильно ли я понял алгоритм?
Рассматривайте его как вычисление корреляционной функции. Если смещение кратно периоду (длине ключа), то корреляция максимальна.

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

И, кстати, поройтесь в Google - весьма вероятно, что на каком-либо из онлайновых (де)крипто-сервисов подобная проверка уже встроена.

И вот здесь еще взгляните: CrypTool 2
Вложения
Тип файла: 7z bfo.7z (2.7 Кб, 45 просмотров)
1
43 / 43 / 13
Регистрация: 17.05.2011
Сообщений: 162
13.09.2013, 09:25  [ТС] 3
Цитата Сообщение от gazlan Посмотреть сообщение
можете попробовать "вручную" сдвинуть один из текстов (дописав пробелы вначале, например)
Я так понимаю смещение - это циклический сдвиг или не так?
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
13.09.2013, 14:10 4
Цитата Сообщение от Peperovich Посмотреть сообщение
смещение - это циклический сдвиг
Да, но если текст достаточного размера (в десятки\сотни раз больше размера ключа, как это обычно бывает), то для простоты можно использовать и линейный сдвиг.
1
13.09.2013, 14:10
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.09.2013, 14:10
Помогаю со студенческими работами здесь

Поиск ключа XOR
Решал задачи по криптографии, запнулся на этой: Направьте пожалуйста, заранее...

Взлом шифра простой замены
Здравствуйте! Была поставлена задача взломать шифр простой замены на примере этого текста: ...

Взлом гаммирования (Тест Фридмана)
Добрый день. Возник вопрос по поводу алгоритма теста Ферми. Начну с того, что...

Взлом шифра простой замены
Добрый день! Бьюсь над этой расшифровкой уже какой день.. Все онлайн взломщики перетестил, ничего...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru