Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
inf_selfwork.doc
Скачиваний:
6
Добавлен:
21.11.2019
Размер:
368.64 Кб
Скачать

5. Криптографическое кодирование дискретного сигнала методом простой подстановки

Задание к работе: выполнить криптографическое кодирование исходного текста методом простой подстановки. Исходным алфавитом принять алфавит из задания 2. В качестве символов кодирования принять l-разрядные двоичные кодовые комбинации (величина l определена в задании 2), значение которых находится в пределах от 0 до двоичного эквивалента числа N-1, где N – мощность исходного алфавита.

Решение задачи

  1. для построения кода составим таблицу соответствия между символами исходного алфавита (графа 1 таблицы 5.1), их произвольными номерами в пределах от 0 до 12 (графа 2 таблицы 5.1) (назначение номера выполнено случайным образом, но номера не должны повторяться) и 4-разрядными кодами этих номеров (графа 3 таблицы 5.1). В графе 4 укажем прямые коды символов исходного алфавита из таблицы 2.1:

Таблица 5.1

Символы исходного алфавита

Произвольный номер символа

Коды

Прямой код

1

2

3

4

а

9

1001

0000

в

11

1011

0001

е

12

1100

0010

и

1

0001

0011

л

10

1010

0100

н

6

0110

0101

о

7

0111

0110

п

0

0000

0111

р

2

0010

1000

с

3

0011

1001

т

4

0100

1010

ч

5

0101

1011

ь

8

1000

1100

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

петров 0000 1100 0100 0010 0111 1011

иван 0001 1011 1001 0110

васильевич 1011 1001 0011 0001 1010 1000 1100 1011 0001 0101

Теперь заменим каждую кодовую комбинацию соответствующим символом, сообразуясь с данными графы 4 таблицы 5.1. Получаем:

петров аьлепч

иван вчсо

васильевич чсивтрьчвн

6. Криптографическое кодирование дискретного сигнала методом Виженера

Задание к работе: выполнить криптографическое кодирование исходного текста методом Виженера. Исходным алфавитом принять множество символов из задания 2. В качестве ключа кодирования использовать имя собственное.

Решение задачи

  1. для построения кода пронумеруем символы исходного алфавита, начиная с 0. Получим таблицу соответствия (таблица 6.1),

Таблица 6.1

символы исходного алфавита

а

в

е

и

л

н

о

п

р

с

т

ч

ь

номера символов

0

1

2

3

4

5

6

7

8

9

10

11

12

  1. для кодирования выполняем шаги:

  • выписываем исходный текст (строка 1 таблицы 6.2),

  • формируем номера символов исходного текста из таблицы 5.1 (строка 2 таблицы 6.2),

  • многократно записываем ключ под исходным текстом (строка 3 таблицы 6.2),

  • заполняем номера символов ключа из таблицы 5.1 (строка 4 таблицы 6.2),

  • складываем по модулю 13 (это мощность алфавита) номера символов (строка 5 таблицы 6.2),

  • заменяем полученные числа символами исходного алфавита из таблицы 6.1 (строка 6 таблицы 6.2). Таким образом, получаем строку, соответствующую исходному тексту:

тиоасеиоиовньлллнеии

Таблица 6.2

Номер строки

Результаты выполнения кодирования

1

п

е

т

р

о

в

и

в

а

н

в

а

с

и

л

ь

е

в

и

ч

2

7

2

10

8

6

1

3

1

0

5

1

0

9

3

4

12

2

1

3

11

3

и

в

а

н

и

в

а

н

и

в

а

н

и

в

а

н

и

в

а

н

4

3

1

0

5

3

1

0

5

3

1

0

5

3

1

0

5

3

1

0

5

5

10

3

10

0

9

2

3

6

3

6

1

5

12

4

4

4

5

2

3

3

6

т

и

о

а

с

е

и

о

и

о

в

н

ь

л

л

л

н

е

и

и

Получаем результат (отдельно закодирована фамилия, имя и отчество):

петров тиоасе

иван иоио

васильевич вньлллнеии

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