Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
191
Добавлен:
02.05.2014
Размер:
752.13 Кб
Скачать

Основы криптографии.

Криптография – наука, изучающая математические методы преобразования информации, с целью её защиты.

Задачи, решаемые с помощью криптографии.

Методами криптографии можно обеспечить:

1. Конфиденциальность.

2. Целостность.

3. Идентификация и аутентификация.

4. Подпись ЭЦП (свойства ЭЦП: уникальность, не копируемость, не отказуемость).

5. Уполномочивание.

6. Ратификация (подтверждение чьих-то прав).

7. Сертификация (подтверждение третьей стороной).

8. Свидетельство (проверка факта создания или наличия информации лицом, отличным от создателя этой информации).

9. Разграничение доступа.

10. Датирование (привязка к дате, патентология).

11. Подтверждение прав на собственность.

12. Анонимность.

13. Неотказуемость (non-repudiation – невозможность отказаться от информации).

14. Аннулирование (правильно уничтожить информацию во всей системе).

Основные термины.

Алфавит – конечное множество знаков, используемых для представления информации.

В большинстве случаев на практике рассматривается бинарный алфавит.

Текст или сообщение – конечный упорядоченный набор элементов алфавита.

Зашифрование – преобразование открытого текста в шифр-текст.

Расшифрование – преобразование шифр-текста в открытый текст.

Дешифрование – восстановление открытого текста по шифр-тексту без знания ключа.

Шифрование – расшифрование + зашифрование.

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

Ключ – конкретное значение некоторых параметров криптоалгоритма, обеспечивающих выбор одного преобразования из семейства.

Смежные дисциплины.

Стеганография – в отличие от криптографии стеганография стремится скрыть сам факт передачи информации.

Алгебраическая теория кодирования – теория кодов, исправляющих ошибки.

Классификация криптосистем.

В блочных – информация преобразуется блоками, равной одной и той же длины и для преобразования всех блоков используется одно и то же преобразование.

В поточных – преобразование изменяется с каждым моментом времени.

Требования к криптосистемам.

1. Знание алгоритма шифрования не должно уменьшать надёжность шифра.

2. Зашифрованное сообщение должно поддаваться чтению только при наличии ключа.

3. Криптоалгоритм должен противостоять атакам по открытому тексту.

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

5. Структура алгоритма шифрования должна быть неизменной.

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

Абсолютно стойкий шифр.

Клод Шеннон в работе «…» доказал, что такой шифр является абсолютно стойким.

Гаммирование случайной равновероятной гаммой, длина которой равна длине открытого текста, даёт абсолютно стойкий шифр.

P = P1 P2 … Pn

  

K = K1 K2 … Kn

C = C1 C2 … Cn

Поточные криптосистемы.

Аддитивный поточный синхронный шифр (симметричная криптосистема).

RKG – Running Key Generator

Ek(x) = xi  ki

Линейные регистры сдвига с обратной связью (LFSR).

x32 + x7 + x5 + x3 + x2 + x + 1

Чтобы период выходной последовательности был максимальным, характеристический многочлен регистра не должен раскладываться в произведение двоичных многочленов меньшей степени.

Поточный алгоритм шифрования А5/1 (GSM).

maj – мажоритарная функция

1: x19 + x5 + x2 + x +1

2: x22 + x +1

3: x29 + x25 + x2 + x +1

Блочный алгоритм ГОСТ 28147 – 89.

Работает с блоками 64 бита, длина ключа 256 бит.

Общая структура алгоритма:

K0, K1, … , K31 – разные сеансовые ключи

[+] операция XOR (исключающее ИЛИ)

Вид функции f:

[+] сложение mod 232 (по модулю)

[S] S-блок (выполняется подстановка), например: 1234

3142

[11] сдвиг влево на 11 позиций

Ключ K генерируется случайно:

Причём ключи K0K23 берутся слева направо, а ключи K24K31 справа налево.

В настоящее время алгоритм ГОСТ не взломан. Определённый недостаток алгоритма является то, что принципы его построения, а именно, порядок выбора S-блоков, не известен.

Открытое распределение ключей Диффи-Хеллман.

p – большое простое число

 – примитивный элемент поля GF(p)

Выбирает: Выбирает:

1  x  p – 2 1  y  p – 2

Посылает: yA = x mod p

Вычисляет: yB = y mod p

Криптосистема RSA.

  • Выбирается два простых больших случайных числа p, q

  • Вычисляется n = p  q

  • Случайно выбирается ключ шифрования (e), взаимно простым (p – 1)(q – 1)

  • Ключ дешифрования: e  d = 1 mod (p – 1)(q – 1)

d, n – взаимно простые

e, n – открытый ключ

d – секретный ключ

p, q – держат в секрете

Шифрование:

  • Сообщение разбивается на блоки mi, mi  n

  • Зашифрование: Ci = mie mod n

  • Расшифрование: mi = Cid mod n

 Cid = (mie)d = mied = mik(p – 1)(q – 1) + 1 = mi  mik(p – 1)(q – 1) = mi mod n 

Недостатки криптосистемы с открытым ключом:

  • Крайне низкое быстродействие (в 1000 раз медленнее, чем ГОСТ).

  • Отсутствует строгое математическое обоснование для всех алгоритмов с открытым ключом.

Понятия о криптографических протоколах.

Протокол – схема взаимодействия нескольких сторон.

Бросание жребия по телефону.

Выбирает: x  

y = f(x) Угадать, число чётное или нечётное?

Догадка

Прав или нет x

f(x)

Соседние файлы в папке Лекции по защите информации