Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шифры сложной замены.doc
Скачиваний:
5
Добавлен:
27.09.2019
Размер:
479.74 Кб
Скачать

4. Варианты заданий

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

  1. Зашифровать и расшифровать русскоязычное сообщение со знаками препинания с помощью шифра Альберти (длина алфавита равна 35). Ключом (изменяемым параметром) является алфавит замены и начальный сдвиг алфавитов. Величина шага относительного сдвига фиксирована и равна 3.

  2. Зашифровать и расшифровать русскоязычное сообщение с пробелами и без знаков препинания с помощью шифра Альберти. Ключом является алфавит замены, формируемый по ключевому слову, и величина шага относительного сдвига. Величина начального сдвига фиксирована и равна 4.

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

  4. Зашифровать и расшифровать англоязычное сообщение, содержащее пробелы и знаки препинания (длина алфавита 30), с помощью шифра Альберти. Ключом является алфавит замены, который формируется по ключевому слову и величина шага относительного сдвига. Величина начального сдвига фиксирована и равна 5.

  5. Зашифровать и расшифровать англоязычное сообщение с пробелами и без знаков препинания с помощью шифра Альберти. Ключом является алфавит замены, который формируется по ключевому слову и величина начального сдвига. Величина шага относительного сдвига фиксирована и равна 2. Сдвигать алфавит замены нужно после шифрования каждого слова.

  6. Зашифровать и расшифровать русскоязычное сообщение со знаками препинания с помощью шифра Тритемия (длина алфавита равна 35). Ключом является алфавит замены, формируемый по ключевому слову.

  7. Зашифровать и расшифровать русскоязычное сообщение с пробелами и без знаков препинания с помощью шифра Тритемия (длина алфавита равна 33). Ключом является алфавит замены, формируемый случайным образом.

  8. Зашифровать и расшифровать англоязычное сообщение с пробелами и знаками препинания, с помощью шифра Гронсфельда. Реализовать двойное шифрование с двумя разными числовыми ключами.

  9. Зашифровать и расшифровать сообщение, содержащее любые символы кодовой таблицы ASCII, с помощью шифра Гронсфельда. Реализовать тройное шифрование с двумя разными числовыми ключами (зашифровать с первым ключом, затем применить операцию расшифрования со вторым ключом и снова зашифровать с первым ключом).

  10. Зашифровать и расшифровать сообщение, содержащее любые символы кодовой таблицы ASCII, с помощью шифра Вижинера. Длина ключа должна быть не менее 5 символов.

  11. Зашифровать и расшифровать русскоязычное сообщение с пробелами и без знаков препинания с помощью шифра Вижинера. Реализовать двойное шифрование с двумя разными числовыми ключами. Длина каждого ключа должна быть не менее 7 символов.

  12. Зашифровать и расшифровать англоязычное сообщение, содержащее пробелы и знаки препинания (длина алфавита 30), с помощью шифра Вижинера. Ключом является начальный алфавит замены, который формируется случайным образом и ключевое слово.

  13. Зашифровать и расшифровать русскоязычное сообщение, содержащее пробелы и знаки препинания (длина алфавита 35) с помощью шифра Вижинера. Ключом является начальный алфавит замены, формируемый по ключевому слову, и ключевое слово метода Вижинера.

  14. Зашифровать и расшифровать англоязычное сообщение, содержащее пробелы (длина алфавита 27), с помощью шифра Вижинера. Реализовать тройное шифрование с двумя разными ключевыми словами (зашифровать с первым ключом, затем применить операцию расшифрования со вторым ключом и снова зашифровать с первым ключом).

  15. Зашифровать и расшифровать русскоязычное сообщение, содержащее пробелы и знаки препинания (длина алфавита 36) с помощью шифра «двойной квадрат» Уитстона. Ключом является порядок букв и число строк в таблицах.

  16. Зашифровать и расшифровать англоязычное сообщение, содержащее пробелы и знаки препинания (длина алфавита 30) с помощью шифра «двойной квадрат» Уитстона. Ключом является порядок букв, задаваемый ключевыми словами, и число строк в таблицах.

  17. Зашифровать и расшифровать русскоязычное сообщение, содержащее пробелы и знаки препинания (длина алфавита 35) с помощью шифра «двойной квадрат» Уитстона. Размер каждой таблицы 5х7. Ключом является порядок букв, задаваемый датчиком случайных чисел.

  18. Зашифровать и расшифровать русскоязычное сообщение без пробелов и без знаков препинания (длина алфавита 32) с помощью шифра «двойной квадрат» Уитстона. Размер каждой таблицы 8х4. Ключом является: порядок букв, задаваемый ключевыми словами.

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

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

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

  22. Зашифровать и расшифровать сообщение, содержащее символы кодовой таблицы ASCII с помощью одноразовой системы шифрования. Ключом является набор случайных символов общей длиной не менее длины сообщения и начальная позиция в этом наборе.

  23. Зашифровать и расшифровать сообщение, содержащее символы кодовой таблицы ASCII с помощью шифра Вернама. Ключом является набор случайных символов общей длиной не менее 10.

  24. Зашифровать и расшифровать сообщение, содержащее символы кодовой таблицы ASCII с помощью шифра Вернама. Ключом является набор случайных битов общей длиной не менее 32.

  25. Зашифровать и расшифровать англоязычное сообщение с пробелами с помощью шифра Вернама (5 бит на символ). Ключом является набор случайных букв латинского алфавита общей длиной не менее 10.

  26. Зашифровать и расшифровать русскоязычное сообщение, содержащее пробелы, знаки препинания и цифры, с помощью шифра Вернама (6 бит на символ). Ключом является набор случайных битов общей длиной не менее 36.

  27. Зашифровать и расшифровать русскоязычное сообщение без пробелов и знаков препинания с помощью шифра Вернама (5 бит на символ). Ключом является набор случайных ASCII символов общей длиной равной длине сообщения (при измерении в битах).

  28. Зашифровать и расшифровать русскоязычное сообщение с пробелами с помощью имитатора роторной машины, которая состоит из двух дисков. При выборе ключа используется 5 дисков с различными заменами. Роторы вращаются по принципу одометра. Начальные позиции роторов могут изменяться.

  29. Зашифровать и расшифровать англоязычное сообщение с пробелами (длина алфавита 27) с помощью имитатора роторной машины, которая состоит из трех дисков. Порядок установки дисков может изменяться. После шифрования каждого символа шаг перемещения третьего ротора – 1, второго – 2, первого – 5. Изначально роторы устанавливаются без смещения.

  30. Зашифровать и расшифровать англоязычное сообщение с пробелами (длина алфавита 27) с помощью имитатора роторной машины, которая состоит из двух дисков. При выборе ключа используется 3 диска с различными заменами. После шифрования каждого символа шаг перемещения второго ротора – 4, первого – 7. Начальные позиции роторов могут изменяться.

  31. Зашифровать и расшифровать русскоязычное сообщение с пробелами и знаками препинания с помощью имитатора роторной машины, которая состоит из двух дисков. Для второго диска являются запрещенными 3 позиции, которые входят в состав ключа. Роторы вращаются по принципу одометра. Первый диск устанавливается в начальную позицию со смещением 5, второй – со смещением 1.

  32. Зашифровать и расшифровать русскоязычное сообщение с пробелами и знаками препинания (длина алфавита 35) с помощью имитатора роторной машины, которая состоит из трех дисков. Первый ротор вращается с шагом 6 после каждого полного оборота второго ротора. Второй и третий роторы вращаются по принципу одометра. Установка роторов в начальные позиции производится по буквам ключевого слова.

  33. Зашифровать и расшифровать сообщение, состоящее из цифр и пробелов (длина алфавита 11), с помощью имитатора роторной машины, которая состоит из четырех дисков. Роторы вращаются по принципу одометра. Установка роторов в начальные позиции производится по цифрам четырехзначного числа.

  34. Зашифровать и расшифровать сообщение, состоящее из цифр (длина алфавита 10), с помощью имитатора роторной машины, которая состоит из трех дисков. После шифрования каждого символа шаг перемещения третьего ротора – 1, второго ротора – 3, первого ротора – 7. Изначально роторы устанавливаются без смещения.

  35. Зашифровать и расшифровать сообщение, состоящее из цифр, с помощью имитатора роторной машины, которая состоит из трех дисков. Для второго диска является запрещеной 1 позиция, для третьего – 3 позиции. Роторы вращаются по принципу одометра, но в разные стороны. Изначально роторы устанавливаются без смещения.

  36. Зашифровать и расшифровать русскоязычное сообщение с пробелами и знаками препинания, с помощью имитатора роторной машины, которая состоит из двух дисков. После шифрования каждого символа второй ротор сдвигается на 1 позицию по часовой стрелке, второй ротор – на 3 позиции против часовой стрелки. Установка роторов в начальные позиции производится по цифрам двузначного числа.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]