- •Федеральное агентство связи
- •Предисловие
- •Введение
- •Лекция 1. Основные понятия информатики.
- •Информатика – понятие, определение.
- •Что такое информация?
- •В каком виде существует информация?
- •Как передаётся информация?
- •Лекция 2. Свойства информации. Количество информации. Понятие алгоритма.
- •Какими свойствами обладает информация?
- •Как измеряется количество информации?
- •Понятие алгоритма
- •Что такое информационные ресурсы и информационные технологии?
- •Что понимают под информатизацией общества?
- •Лекция 3. Кодирование чисел. Логические основы эвм
- •Кодирование чисел двоичным кодом
- •Перевод из одной системы счисления в другую.
- •Двоичная система счисления Bin (Вinary)
- •Логические основы построения эвм
- •Лекция 4. Арифметические операции, представления информации и принцип программного управления в эвм
- •Арифметические операции в эвм
- •Обратный и дополнительный коды чисел
- •Представление информации в эвм
- •Принцип программного управления эвм
- •Лекция 5. Устройства компьютера
- •5.1 Устройства компьютера.
- •5.2 Принципы построения компьютера
- •5.3 Как выполняется команда?
- •5.4 Архитектура и структура компьютера.
- •5.5 Центральный процессор компьютера
- •5.6 Память компьютера
- •5.6.1. Устройства образующие внутреннюю память компьютера
- •5.6.2 Внутренняя память
- •5.6.3. Специальная память
- •5.6.4 Внешняя память
- •Лекция 6 Вирусы их разновидности и борьба с ними. Архивы и архиваторы.
- •6.1 Компьютерный вирус
- •6.2 Антивирусные программы
- •6.3 Классификация антивирусов
- •6.3 Архиваторы и архивы
- •6.4. Типы сжатия информации
- •Лекция 7 Основы программирования
- •7.1 Машинный язык.
- •7.2 История языков программирования.
- •7.3 Основы машинной математики.
- •7.4 Блок-схемы.
- •7.4.1 Базовые алгоритмические структуры
- •Лекция 8 Некоторые аспекты безопасности связи
- •8.1 Шифр Юлия Цезаря
- •8.2 Основные определения
- •8.3 Коды и шифры
- •8.4 Оценка стойкости системы шифрования
- •8.5 Коды, обнаруживающие и исправляющие ошибки.
- •8.6 Модульная арифметика
- •Лекция 9 html и текст
- •9.1 Понятие тэга
- •Этот текст набран с разрядкой
- •Этот текст набран с разрядкой
- •9.2 Борьба с ограничениями html
- •Лекция 10 Графика, Гиперссылки.
- •10.1 Внедрение графики в html – документ
- •10.2 Гиперссылки
- •10.3 Структура сайта
- •Первый этюд к гипертексту
- •Второй этюд к гипертексту
- •Третий этюд к гипертексту
- •Последний этюд к гипертексту
- •10.4 Имена файлов и ссылки на них
- •Замечание
- •10.5 Коварный FrontPage.
- •Лекции 11 Таблицы и фреймы. Формы.
- •11.1 Таблицы
- •11.2 Фреймы
- •11.3 Формы
- •Лекция 12 Презентация
- •12.1 Алгоритм создания презентации
- •11.2 Выбор диаграмм
- •Предметный указатель
- •Литература
8.6 Модульная арифметика
В криптографии и криптоанализе часто бывает необходимо сложить две последовательности чисел или же вычесть одну из другой. Такое сложение и вычитание производится, как правило, не с помощью обычных арифметических действий, а с помощью операций, называемых модульной арифметикой. В модульной арифметике сложение, вычитание выполняется относительно некоторого фиксированного числа, которое называется модуль. Типичными значениями модулей, используемые в криптографии, являются 2, 10 и 26. Какой бы модуль мы ни взяли, все встречающиеся числа заменяются на остатки от деления этих чисел. Если в остатке получается отрицательное число, то к нему прибавляют значение модуля, чтобы остаток стал неотрицательным. Например, если используется модуль 26, то единственно возможные числа лежат в диапазоне от 0 до 25. Так, если прибавить 17 к 19, то результат равен 10, поскольку 17+19 = 36, а 36 при делении на 26 дает остаток 10. Чтобы указать, что используется модуль 26, принята форма записи:
17+19=10(mod26).
Если вычесть 19 из 17, то результат (-2) получается отрицательным, поэтому к нему прибавляется 26, и в итоге получается 24.
При сложении по модулю 26 двух числовых последовательностей сформулированные правила сложения применяются в каждой паре чисел по отдельности, без «переноса» на следующую пару. Аналогично, при вычитании по модулю 26 одной числовой последовательности из другой правила вычитания применяются к каждой паре чисел по отдельности, без «заимствования» из следующей пары.
Пример 1.1
Сложить по модулю 26 последовательности 15 11 23 06 11 и 17 04 14 19 23
Решение
11 23 06 11
17 04 14 19 23
32 15 37 25 34
06 15 11 25 08
и в результате 06 15 11 25 08
Если модуль равен 10, то используются числа от 0 до 9; при модуле 2 – только 0 и 1
Арифметика по модулю 2, или, как ее обычно называют, двоичная (бинарная) арифметика, имеет особое значение, поскольку в этом случае сложение и вычитание являются идентичными операциями, т.е всегда дают одинаковый результат, а именно:
0 0 1 1 0 0 1 1
+ 0 1 0 1 - 0 1 0 1
0 1 1 2 0 -1 1 0
0 1 1 0 0 1 1 0 (mod 2) в обоих случаях.
Модульное сложение и вычитание букв
Давайте рассмотрим пример модульного сложения и вычитания применимо к буквам.
Прибавить TODAY к NEVER по модулю 26
Вычесть TODAY из NEVER по модулю 26
Решение
TODAY= 19 14 03 00 24
NEVER= 13 04 21 04 17
Сумма = 32 18 24 04 41 06 18 24 04 15 = GSYEP
TODAY= 19 14 03 00 24
NEVER= 13 04 21 04 17
Разность = 06 10 -18 -04 07 06 10 08 22 07 = GKIWH
Краткие итоги
В лекции рассмотрены вопросы, связанные с шифрование и дешифрованием текстов. Даны определения кода, шифра, дешифровки, криптографии. Рассмотрено применение модульной арифметики к вопросам шифрования.
Контрольные вопросы
Дайте определение монографа, диграфа, триграфа и полиграфа чем они отличаются друг от друга.
Дайте определение символа.
Дайте определение строки.
Как определяется длина строки?
Что такое система шифрования?
Дайте определение терминам зашифрование и расшифрования.
Чем расшифрование отличается от дешифрования?
Дайте определение криптографии, и кто ей занимается.
Назовите этапы дешифрования и охарактеризуйте их.
Дайте определение кода и шифра.
Как оценить стойкость шифра?
Дайте определение кодам, обнаруживающим и исправляющим ошибки.
Назовите методы сокрытия содержания сообщений.
Дайте определение модульной арифметике и ее предназначение для шифрования текстов.