Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Криптография.doc
Скачиваний:
20
Добавлен:
23.03.2015
Размер:
129.02 Кб
Скачать

1. Написать вспомогательную программу определения статистики алфавита русского/английского языка (подсчета вероятностей букв в осмысленных текстах).

Примечание: Выбор языка шифрованных текстов и, соответственно, криптограмм - по усмотрению исполнителя.

Вход.

Текстовый файл. Размер файла - чем больше, тем лучше. Ограничение на длину - только лишь разумное время обработки.

Выход.

Таблица статистики (вывести на экран и в файл), аналогичная любой из табл. 1-4.

Примечание. Пробелы и пунктуация должны убираться из текста автоматически, поскольку и при шифровании текста они не должны учитываться (только в учебных целях, разумеется).

Задание. С помощью программы определения статистики исследовать зависимость статистики от размера выборки (файла).

Результат исследования в отчете представить в виде таблиц (или одной сводной таблицы)и диаграммы для 5-6 возрастающих по размеру файлов (или связных фрагментов одного файла). По оси "Y" - вероятности букв; по оси "Х" - последовательность букв от первой до последней в алфавите.

Сравнить результаты с данными табл. 1-4. Сделать выводы. Создать рабочий файл статистики для использования в дальнейшем.

2. Написать программу расшифровки криптограмм, созданных методом простой подстановки.

Вход.

2.1. Выходной текстовый файл программы шифровки методом простой подстановки или текстовый файл, представляющий собой криптограмму и созданный "вручную" с помощью какого-либо текстового редактора. В первом (предпочтительном!) случае целесообразно использовать программы, разработанные в Лаб. работе № 2.

2.2. Таблица статистики, полученная с помощью программы определения статистики алфавита (п. 1. ПРАКТИЧЕСКОЙ ЧАСТИ) и одна из таблиц 1 - 4.

Длина криптограммы - не менее 30-40 букв.

Выход. расшифрованный текст (вывести на экран).

ПРИМЕЧАНИЕ. Криптограмму получить по произвольно выбранному фрагменту того же файла, который использовался как входной для программы п. 1. ПРАКТИЧЕСКОЙ ЧАСТИ.

Задание. С помощью данной программы попробовать "расшифровать" несколько криптограмм. Сравнить результаты расшифровки с помощью самостоятельно созданной таблицы статистики и с помощью выбранной таблицы из приведенных в тексте теоретической части. Какая из таблиц "лучше"?

3. Написать программу шифровки текста с использованием квадрата Виженера.

Вход.

3.1. Текстовый файл.

3.2. Начальный перемешанный алфавит.

3.3. Ключ (длина порядка 10 букв).

Выход.

Криптограмма (вывести в файл и на экран).

Примечания.

Программа должна автоматически формировать квадрат Виженера по введенному любым способом начальному перемешанному алфавиту. Иными словами, и начальный перемешанный алфавит, и ключ являются параметрами, позволяющими варьировать условия шифровки/расшифровки, исследовать и повторно проверять отдельные особенности программы расшифровки.

Криптограмму на экран желательно выводить группами букв для удобства визуального исследования (см. криптограмму, используемую в качестве примера в теоретической части).

Пробелы и знаки пунктуации игнорировать.

Задание. Зашифровать фрагмент того же файла, по которому определялась статистика. Размер шифруемого текста и соответственно, криптограммы, должен быть порядка 800-1000 букв.