0 / 0 / 0
Регистрация: 17.12.2015
Сообщений: 16
|
|
1 | |
Криптографическая атака на шифр Виженера21.12.2015, 14:58. Показов 6743. Ответов 11
Метки нет (Все метки)
Помогите, если сможете!!!!!!!Пожалуйста!!!!!!!
Расшифруйте следующее сообщение: «ХЯХХ ДРЛХХЯ – АРНЧЮЭШВЯ СБЗПХ ЁЪРПОВБ РРЗГК, ВЖНЦТОЮХВ ЦАФУМДЫНЯ ШЬЕГЕС. АРЪДЖФТУЯ МТ ГЙЁУФТРРЗЫ ДЦЗЯ-ЦОМСЗАВПДЁЪ РВЙНАР. МЩЗЭЬ ГЕПШГ ЦЧСС НВЧЯЮЯ ХЪНЛ КВТТАМ. ТХКНАПИД ФХХНЛЩЫ СРНЫВЪДЖФТ РТ НУЩРСРЪГР СМЧУЕ, ЕСЦРЭВЯРЙЙШС ООТУ НЕ АНАГ ПО УАЛБУУ ДФЩОДАМЫП. ЬЪУРЗ ОАРДЩЖ ЦЗЧУЧИ ОГЯЪДЖФТ ЕРЯАЩЫХ УЪСУИЗ Ы ЫЕЭГБСФАМТ. УУЁГ МЕНУФТ АХЪЖЭТВВКЧЮЕ ЩЕЯМБ ВДГИНГГШИ Д ВЗЦХ ТЪТЬАДИКОЮАК ТФРВМЗЦ – ЯЦЗУЪКРНДЙЮУЯ Ф ЭЕДЕПТ ТУЖХЪЧПОИ Ы ШЕЕГПНРЙ АЧЬШКСХ, ПРЧСЫ ЯЧЧЗЭНР ПЯЦРГОЛШИ ПА РЧТЙЁ Н ЛКМЕЛДЫУВЦ ЧЕЁНЗЭД Н ЕСЭТЖПДАЮУ ЖРФЖВЮШЫЭНЖВ Ц ЮЕУ, Б ДГУЁСЩУ МАСЁЮЦАСОО НЕГАЩПХ.». Для автоматизации процесса можно разработать программу, реализующую криптоанализ шифра Виженера, а также использовать средства статистической обработки информации.
0
|
21.12.2015, 14:58 | |
Ответы с готовыми решениями:
11
Криптографическая атака на шифр Венжера Криптографическая атака на шифр простой замены Криптографическая атака на шифр простой замены Шифр Виженера |
Cyborg Drone
|
22.12.2015, 22:17
#2
|
Не по теме: В вашей теме "Криптографическая атака на шифр простой замены" Вы просили меня помочь с расшифровкой сообщения из этой темы. Будет время - помогу.
0
|
Модератор
10012 / 5367 / 3340
Регистрация: 17.08.2012
Сообщений: 16,359
|
||||||||||||||||
26.12.2015, 01:25 | 3 | |||||||||||||||
Сообщение было отмечено ZX Spectrum-128 как решение
Решение
Потребовалось не так много времени. Итак.
Будем считать, что используется классический шифр Виженера, то есть, что tabula recta не скремблирована (буквы в ней расположены по алфавиту) и длина кодового слова меньше длины сообщения. Сообщение довольно длинное, будем использовать файловый ввод-вывод. Предостережение: таблицы кодировок в файле и в окне программы должны совпадать. Для начала для удобства дешифровки выбросим из сообщения незашифрованную информацию, заодно подсчитаем длину сообщения и количество различных буковок. Программа для этого
Попытаемся выяснить длину кодового слова. Не станем что-то там вычислять по Касиске и Фридману, а напишем программку для автокорреляции сообщения, на дисплей будем выдавать количество совпадений в зависимости от сдвига, да, собственно, и достаточно. p - порог вывода по совпадениям (выход p = 1000)
Но, несмотря ни на что, атака увенчалась успехом. Реально решил так: выводится сообщение, исходя из ширины вывода стандартного дисплея в 80 символов, по 10 букв через пробел в 7 столбцов, и табличка в 10 строк с шапкой из алфавита и примерных частот букв алфавита на 1000 символов русского текста, и далее строки, где указаны номер буквы кодового слова, сдвиг алфавита и (для удобства масштабированные) частоты по всему алфавиту для данной буквы кодового слова. При подборе в программу вводятся два числа через пробел: номер буквы кодового слова и относительный сдвиг шифра Цезаря для данной буквы кодового слова. По окончании подбора шифра нужно ввести два числа, первое из которых не больше нуля. Шифр удалось подобрать по однобуквенным словам с одновременным общим постоянным анализом сообщения на соответствие буквосочетаний русскому языку в частично расшифрованном тексте. Программа традиционно сырая и неоптимизированная, поскольку нужно было не писать программу, а проводить атаку. Если желаете, можете программулину причесать. Программа
Расшифрованное сообщение: ГОРА БЕЛУХА - НАИВЫСШАЯ ТОЧКА ГОРНОГО АЛТАЯ, ВЕНЧАЮЩАЯ КАТУНСКИЙ ХРЕБЕТ. НАХОДИТСЯ НА ТЕРРИТОРИИ УСТЬ-КОКСИНСКОГО РАЙОНА. ЗДЕСЬ БЕРЁТ СВОЁ НАЧАЛО РЕКА КАТУНЬ. НАЗВАНИЕ ВЕРШИНЫ ПРОИСХОДИТ ОТ ОБИЛЬНОГО СНЕГА, ПОКРЫВАЮЩЕГО ГОРУ ОТ ПИКА ДО САМОГО ОСНОВАНИЯ. ЧЕРЕЗ МАССИВ БЕЛУХИ ПРОХОДИТ ГРАНИЦА РОССИИ И КАЗАХСТАНА. ГОРА БЕЛУХА ПРЕДСТАВЛЕНА ДВУМЯ ВЕРШИНАМИ В ВИДЕ НЕПРАВИЛЬНЫХ ПИРАМИД - ОСТРОКОНЕЧНОЙ С СЕВЕРА ВОСТОЧНОЙ И ЗАПАДНОЙ БЕЛУХОЙ, ПОЧТИ ОТВЕСНО ПАДАЮЩИМИ НА СЕВЕР К АККЕМСКОМУ ЛЕДНИКУ И ПОСТЕПЕННО СНИЖАЮЩИМИСЯ К ЮГУ, В СТОРОНУ КАТУНСКОГО ЛЕДНИКА. Если надо - комментарии к программам добавлю. На всякий случай, архив с моими исходным файлом и файлами, порождёнными программами: vigener.zip. Файлы в кодировке CP-866 (русская кодовая таблица OEM/DOS), при просмотре блокнотом из windows нужно в блокноте установить какой-нибудь OEM/DOS шрифт, Terminal, например.
3
|
0 / 0 / 0
Регистрация: 20.02.2017
Сообщений: 5
|
|
20.02.2017, 15:47 | 4 |
при запуске последней программы выдает много ошибок можете помочь? параметр цикла for должен описываться в заголовке цикла 16,18,28,33,36,40,60,63,68,71,82,86,96 строчки
0
|
Модератор
10012 / 5367 / 3340
Регистрация: 17.08.2012
Сообщений: 16,359
|
|
20.02.2017, 16:42 | 5 |
Dron19, я писал программу, подходящую для большинства диалектов паскаля, а вовсе не для весьма специфичного Pascal ABC.NET, в котором Вы мою программу запустили. Приведите программу в соответствие с синтаксисом Pascal ABC.NET, ну там, уберите из секции var переменные циклов, все for замените на for var, ну и так далее. Поскольку Вы этого сделать не смогли, запускайте программу в среде Pascal ABC.NET, установленной на Вашем компьютере. С Вашими знаниями в онлайн-среде WDE Вам запустить программу вряд ли удастся, поскольку она оперирует с файлами. И ещё. Запуск этой программы без результата работы двух предыдующих программ смысла не имеет, а Вы эти программы не запускали. И ещё. На всякий случай. Программа не производит автоматическую расшифровку шифра Виженера. Вы уверены, что эта программа Вам требуется?
Итак, чем я могу помочь?
1
|
0 / 0 / 0
Регистрация: 20.02.2017
Сообщений: 5
|
|
20.02.2017, 16:58 | 6 |
я запускал 3 ваши программы из этой темы, после первой получил длину текста, а после запуска второй у меня вышло много чисел, а насчет 3-й можете помочь адаптировать для паскаля АВС? спасибо заранее большое
0
|
Модератор
10012 / 5367 / 3340
Регистрация: 17.08.2012
Сообщений: 16,359
|
|
20.02.2017, 17:19 | 7 |
Просмотрел программу заново. Оказалось, что того, что я написал выше, вполне достаточно для адаптации. Уберите из секции var переменные i и j (12 строка) и в программе везде замените for на for var. Извиняюсь, на том компьютере, который я сейчас использую, нет Pascal ABC.NET, и установить его сюда не разрешается.
0
|
0 / 0 / 0
Регистрация: 20.02.2017
Сообщений: 5
|
|
20.02.2017, 17:26 | 8 |
поменяв все, как вы и сообщили мне, скомпилировав и запустив программу, выдало, что имя 'len' неизвестно
0
|
6811 / 4568 / 4819
Регистрация: 05.06.2014
Сообщений: 22,438
|
||||||
20.02.2017, 17:55 | 9 | |||||
Dron19, что-то не так вы поменяли.
Ибо, в исходной программе
0
|
0 / 0 / 0
Регистрация: 20.02.2017
Сообщений: 5
|
||||||
20.02.2017, 18:07 | 10 | |||||
0
|
6811 / 4568 / 4819
Регистрация: 05.06.2014
Сообщений: 22,438
|
|
20.02.2017, 18:36 | 11 |
34-я строка - цикл идет от 0 до n, а границы массива [0..n-1]
0
|
0 / 0 / 0
Регистрация: 20.02.2017
Сообщений: 5
|
|
20.02.2017, 19:42 | 12 |
спасибо огромное теперь буду подбирать комбинацию)
0
|
20.02.2017, 19:42 | |
20.02.2017, 19:42 | |
Помогаю со студенческими работами здесь
12
Шифр Виженера. Устранить скобку и запятые в результате Шифр Виженера из-за чего у меня не расшифровывает зашифрованный текст ? Шифр Виженера Шифр Виженера, шифр Скитала Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |