Лекция№1

 

 

Криптология состоит из двух направлений: криптографии и криптоанализа.

 

Криптография – наука о способах преобразования (шифрования)

информации с целью ее защиты от несанкционированных пользователей.

Криптоанализ – наука (и практика ее применения) о методах и способах несанкционированного вскрытия шифров (атаки на шифры). Вскрытием шифров занимаются так называемые криптоаналитики.

Задачи криптографии:

1. Защита данных при хранении и передаче;

2. Целостность информации;

3. Электронно-цифровая подпись (ЭЦП);

4. Аутентификация – проверка подлинности.

Существует вспомогательная часть криптосистемы – управление ключами, включающее следующее:

1. генерация;

2. система передачи ключей;

3. хранение ключей;

Криптография основана на математических методах из разделов математики :

- Теория чисел

- Абстрактная алгебра

- Полимиальная алгебра

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

В разделе Теория чисел рассмотрим ряд важных для криптографии понятий и алгоритмов.

Абстрактная алгебра – раздел где изучается определенные системы состоящие из определенного множества элементов ( чисел) S и операций

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

Полимиальная алгебра изучает полиномы с целочисленными

коэффициентами. Мы будем рассматривать, в основном, роль полиномов как генераторов псевдослучайных последовательностей.


 

Классификация методов шифрования и алгоритмов.

 

 

Методы шифрования и алгоритмы делятся на симметричные (одноключевые) и асимметричные (двухключевые или системы с открытым ключом).

Методы шифрования

 

 

1. Симметричные

· Блочные (необходимый объем информации делится на блоки, каждый блок шифруют)

· Поточные (объем информации не делится, для повышения скорости передачи информации)

· Комбинированные

2. Асимметричные

· Блочные

 

Пример1простейшего симметричного шифра: шифр Цезаря

yi = (xi+a)mod m

где x-открытый текст (чило из диапазона (1 – m-1))

y-шифрованный (чило из диапазона (1 – m-1))

а- смещение (секретный ключ) -(чило из диапазона (1 – m-1))

xi= (yi+(m-a))mod m

 

 

Пример2.Модифицированный алгоритм Цезаря

 

 

а)yi = (xib+a)mod m , где b-ключ и а-другой ключ b->b-1 (ставим в соответствие);

xi= [(yi+(m-a))b-1]mod m, где bi-1

- обратный элемент элементу bi (чило из диапазона (1 – m-1))

Обратный элемент удовлетворяет условию (bb-1)modm=1.

 

 

б)yi=(xibi)mod m;

xi= (xibi-1)mod m,

если m простое число, то в качестве bi – любое число в интервале от 1 до m-1,

а когда m- составное число, то не все числа в интервале от 1 до m-1имеют

обратный элемент.

(число называется простым если оно делится без остатка только на 1 и на себя иначе оно составное).


 

Требования к шифрам

 

 

1. Шифротекст читается только при наличии секретного ключа;

2. Число операций для определения секретного ключа по фрагменту шифротекста и такого же кусочка открытого текста должно быть

не меньше общего числа возможных ключей, которое

определяется как 2ⁿ, где n-разряд;

3. Знание алгоритма шифрования не должно влиять на надежность защиты;

4. Незначительное изменение ключа шифрования должно приводить к существенному изменению вида шифротекста;

5. Незначительное изменение открытого текста должно приводить к существенному изменению вида шифротекста, даже при использовании одного и того же секретного ключа;

6. Структурные элементы алгоритма шифрования должны быть неизменными (иначе не будет выполняться п. 4, 5);

7. Длина шифротекста должна быть равной длине исходного текста;

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

9. Любой ключ из множества возможных должно обеспечивать надежную ЗИ.

 

 

Все эти требования определились в систематизированном виде после публикации статьи «Теории секретной передачи информации» Шеннона (1949-1950г.), где обосновывались теоретически криптостойкий алгоритм, практически криптостойкий алгоритм, а также принципы алгоритмов шифрования, обеспечивающие теоритическую и практическую криптостойкость. Таких принципов два. Они дают возможность выполнения данных 9 требований.

1. Принцип перемешивания. Шифрограмма не должна отличаться от случайного процесса;

2. Рассеивание (п. 5, 6, 7).

 

 

Реализация этих принципов основана на теоретических положениях разделов - Теория чисел, Абстрактная алгебра, Полимиальная алгебра