Главная страница
Навигация по странице:

  • Программа должна выполнят следующее

  • Если используется консольная программа, то должна быть предусмотрена возможность зашифрования/расшифрования производить произвольное количество раз, а не только один раз

  • Теоретический материал

  • Рисунок 1 - Две таблицы со случайно расположенными символами русского алфавита для шифра "двойной квадрат"

  • Контрольные вопросы

  • Реферат языки программирования криптография. Шифр Уинстона Вариант Курсовой. Программа должна выполнят следующее Генерировать с помощью псевдослучайной функции 2 квадрата Уитстона размером Size


    Скачать 66.5 Kb.
    НазваниеПрограмма должна выполнят следующее Генерировать с помощью псевдослучайной функции 2 квадрата Уитстона размером Size
    АнкорРеферат языки программирования криптография
    Дата11.04.2023
    Размер66.5 Kb.
    Формат файлаdoc
    Имя файлаШифр Уинстона Вариант Курсовой.doc
    ТипПрограмма
    #1052982

    "Шифры сложной замены. Двойной квадрат Уитстона"

    Цель:

    Выработать у студента умения и навыки шифрования информации с помощью шифра сложной замены "Двойной квадрат Уитстона".

    Задание.

    1. Ознакомиться с теоретическими сведениями о шифре "Двойной квадрат Уитстона"

    2. Выполнить программную реализацию шифрования и дешифрование данных с помощью шифра "Двойной квадрат Уитстона" на любом алгоритмическом языке , согласно своему варианту.

    3. Протестировать работу программы.

    4. Оформить отчёт.

    Программа должна выполнят следующее:

    1. Генерировать с помощью псевдослучайной функции 2 квадрата Уитстона размером Size, заполненный символами алфавита A, согласно вашего варианта
      (Ваш вариант=(Номер в списке группы) mod 25)

    2. Производить зашифрование данных с помощью шифра "Двойной квадрат Уитстона" , используя сгенерированные квадраты, на 1 шаге

    3. Производить расшифрование данных зашифрованных с помощью шифра "Двойной квадрат Уитстона", используя сгенерированные квадраты, на 1 шаге

    4. Если при шифровании в сообщении встречаются символы, не входящие в алфавит то вывести на экран ошибку и прекратить дальнейшие действия

    5. В программе должно быть предусмотрено 2 режима получения ключа – генерация и ввод с помощью клавиатуры или файла

    6. Выводить результаты работы программы на экран. В качестве результата должны быть выведены:

      1. сгенерированный алфавит

      2. размер квадрата

      3. сгенерированные 2 квадрата Уитстона, расположенные один возле другого

      4. открытый и зашифрованный тексты, разбитый на биграммы

      5. зашифрованный и расшифрованный тексты, разбитый на биграммы

    7. Если используется консольная программа, то должна быть предусмотрена возможность зашифрования/расшифрования производить произвольное количество раз, а не только один раз



    Таблица 1. Варианты заданий.

    в-та

    А

    Size

    1  

    5 случайных заглавных английских букв,11 случайных строчных английских букв, спецсимволы :;()[]<>+

    5x5

    2  

     Заглавные  английские буквы, строчные русские буквы, спецсимволы !?,.:;()

    8x8

    3  

    Цифры,10 случайных заглавных английских букв, 16 случайных строчных русских букв.

    6x6

    4  

    Цифры, 15 случайных строчных английских букв

    5x5

    5  

    Строчные английские буквы, числа из диапазона 0..5, спецсимволы !?,.:;()[]<>+-*/–

    7x7

    6  

    Чётные числа из диапазона 0..9, строчные русские буквы, строчные  английские буквы, спецсимвол *

    8x8

    7  

    Заглавные буквы английского алфавита, чётные числа из диапазона 0..9, спецсимволы <>+-*

    6x6

    8  

    Строчные английские буквы, нечётные числа из диапазона 0..9, 18 случайных строчных букв английского алфавита

    7x7

    9  

    9 строчных английских букв, цифры, 6 строчных русских букв

    5x5

    10    

    Строчные  английские буквы, заглавные русские буквы, спецсимволы ,.:;()[]

    8x8

    11      

    Заглавные русские буквы, чётные числа из диапазона 0..9, 12 случайных заглавных английских букв

    7x7

    12      

    Нечётные числа из диапазона 0..9, 12 случайных заглавных русских букв, спецсимволы ;()[]<>+-*

    5x5

    13      

    Цифры,14 случайных строчных английских букв, 12 случайных строчных русских букв.

    6x6

    14      

    17 случайных строчных букв английского алфавита, строчные буквы русского алфавита.

    7x7

    15      

    Цифры, заглавные русские буквы, 5 случайных строчных английских букв, спецсимволы !?,.:;()[]<>+-*/–

    8x8

    16      

    7 случайных строчных английских букв,9 случайных строчных английских букв, спецсимволы []<>+-*/–

    5x5

    17      

    Заглавные русские буквы, строчные английские буквы, числа из диапазона 0..7

    8x8

    18      

    нечётные числа из диапазона 0..9, заглавные русские буквы, 12 случайных заглавных английских букв

    7x7

    19      

    10 случайных заглавных русских букв, чётные числа из диапазона 0..9, 15 случайных строчных английских букв, спецсимволы !?,.:;

    6x6

    20      

      15 случайных строчных русских букв, цифры

    5x5

    21

    5 случайных заглавных английских букв,11 случайных заглавных украинских символов, спецсимволы :;()[]{}-

    5x5

    22

    Заглавные буквы английского алфавита, нечётные цифры из диапазона 0..9, спецсимволы <>%@*

    6x6

    23

     строчные  английские буквы, строчные украинские буквы, спецсимволы !%,^:;[)

    8x8

    24

    Цифры,10 случайных строчных украинских букв, 16 случайных английских букв.

    6х6

    25

    Заглавные английские буквы, числа из диапазона 5..9, спецсимволы !&,.:;(){}%>+-*/–

    7x7

    фффффффффффффффф

    Теоретический материал

    Шифр "двойной квадрат" Уитстона


    В 1854 г. англичанин Чарльз Уитстон разработал новый метод шифрования биграммами, который называют "двойным квадратом". Свое название этот шифр получил по аналогии с полибианским квадратом. Шифр Уитстона открыл новый этап в истории развития криптографии. В отличие от полибианского шифр "двойной квадрат" использует сразу две таблицы, размещенные по одной горизонтали, а шифрование идет биграммами, как в шифре Плейфейра. Эти не столь сложные модификации привели к появлению на свет качественно новой криптографической системы ручного шифрования. Шифр "двойной квадрат" оказался очень надежным и удобным и применялся Германией даже в годы Второй мировой войны.

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



    Рисунок 1 - Две таблицы со случайно расположенными символами русского алфавита для шифра "двойной квадрат"

    Предположим, что шифруется биграмма исходного текста ИЛ. Буква И находится в столбце 1 и строке 2 левой таблицы. Буква Л находится в столбце 5 и строке 4 правой таблицы. Это означает, что прямоугольник образован строками 2 и 4, а также столбцами 1 левой таблицы и 5 правой таблицы. Следовательно, в биграмму шифртекста входят буква О, расположенная в столбце 5 и строке 2 правой таблицы, и буква В, расположенная в столбце 1 и строке 4 левой таблицы, т.е. получаем биграмму шифртекста ОВ.

    Если обе буквы биграммы сообщения лежат в одной строке, то и буквы шифртекста берут из этой же строки. Первую букву биграммы открытого текста ищут в левой таблице, а соответствующая ей буква зашифрованной биграммы берётся из правой таблицы, в томже столбце, в котором находится символ открытого сообщения. Вторую букву биграммы открытого текста ищут в правой таблице, а соответствующая ей буква зашифрованной биграммы берётся из левой таблице в том же столбце, что и открытый символ биграммы. Поэтому биграмма сообщения ТО превращается в зашифрованную биграмму ЖБ. Аналогичным образом шифруются все биграммы сообщения:

    Сообщение ПР ИЛ ЕТ АЮ Ш ЕС ТО ГО

    Шифртекст ПЕ ОВ ЩН ФМ ЕШ РФ ЖБ ДЦ

    Расшифрование происходит аналогично зашифрованию, только таблицы, которые применялись при шифровании, меняются местами

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

    Контрольные вопросы


    1. Сколько генерируются таблиц?

    2. Каким образом заполняются таблицы?

    3. Что у нас выступает в качестве ключа?

    4. Каким образом происходит зашифрования данных?

    5. Каким образом происходит расшифрования данных?


    написать администратору сайта