
- •Асимметричные криптосистемы План
- •1. Требования к криптографическим системам
- •1.1.Типы шифров
- •1.2.Шифры с секретным ключом
- •1.3.Шифры с открытым ключом
- •Требования для современных криптосистем защиты информации
- •9. Не должно быть простых и легко устанавливаемых зависимостей между ключами, последовательно используемыми в процессе шифрования.
- •10. Любой ключ из множества возможных должен обеспечивать надежную защиту информации.
- •2) Нарушителю доступны все зашифрованные тексты.
- •2. Криптосистемы с открытым ключом
- •2.1. Принципы и методы криптосистемы с открытым ключом
- •2.3. Научная основа
- •3. Основные принципы построения криптосистем с открытым ключом
- •3.1. Концепция криптосистемы с открытым ключом
- •3. Однонаправленные функции
- •Принципы и методы криптосистемы с открытым ключом
- •Алгоритм метода связи с экспоненциальным ключевым обменом
- •4. Криптосистема шифрования данных rsa
- •5. Процедуры шифрования и расшифрования в криптосистеме rsa
- •Оценки длин ключей для асимметричных криптосистем, бит
- •7. Схема шифрования Полига – Хеллмана
- •8. Схема шифрования Эль Гамаля
- •B/aX ykm/aX gkxm/gkx m (mod p),
- •Скорости работы схемы Эль Гамаля
- •9. Комбинированный метод шифрования
- •Длины ключей для симметричных и асимметричных криптосистем при одинаковой их криптостойкости
- •Криптография с несколькими открытыми ключами
- •Распределение ключей в криптосистеме
- •Особенности криптосистем с открытым ключом Применение
- •Преимущества
- •Недостатки
Принципы и методы криптосистемы с открытым ключом
Принцип криптографии с открытым ключом очень тесно связана со свойством односторонних функций, то есть таких функций f(х), что по известному х довольно просто найти значение f(x), тогда как определение х из f(х) сложно в смысле теории.
Но сама односторонняя функция бесполезна в применении:
ею можно зашифровать сообщение, но расшифровать нельзя.
Поэтому криптография с открытым ключом использует односторонние функции с ловушкой.
Ловушка — это некий секрет (инструкция), который помогает расшифровать.
Функцией-ловушкой называется односторонняя функция, для которой обратную функцию вычислить просто, если имеется некоторая дополнительная информация, и сложно, если такая информация отсутствует. То есть существует такой у, что зная f(x), можно вычислить х.
К примеру, если разобрать часы на множество составных частей, то очень сложно собрать вновь работающие часы. Но если есть инструкция по сборке (ловушка), то можно легко решить эту проблему.
Понять принципы и методы криптографии с открытым ключом помогает следующий пример — хранение паролей в компьютере.
Каждый пользователь в сети имеет свой пароль. При входе, он указывает имя и вводит секретный пароль. Но если хранить пароль на диске компьютера, то кто-нибудь его может считать (особенно легко это сделать администратору этого компьютера) и получить доступ к секретной информации.
Для решения задачи хранения паролей в компьютере используется односторонняя функция.
При создании секретного пароля в компьютере сохраняется не сам пароль, а результат вычисления функции от этого пароля и имени пользователя.
Криптосистемы с открытым ключом основываются на односторонних функциях-ловушках.
При этом открытый ключ определяет конкретную реализацию функции, а секретный ключ дает информацию о ловушке.
Любой, знающий ловушку, может легко вычислять функцию в обоих направлениях, но тот, у кого такая информация отсутствует, может производить вычисления только в одном направлении.
Прямое направление используется для шифрования и для верификации цифровых подписей, а обратное - для расшифрования и выработки цифровой подписи.
(Верификация — проверка, проверяемость, способ подтверждения, проверка с помощью доказательств, каких-либо теоретических положений, алгоритмов, программ и процедур путем их сопоставления с опытными (эталонными или эмпирическими) данными, алгоритмами и программами. Верификация — это подтверждение соответствия конечного продукта предопределённым эталонным требованиям. Верификация — методика распознавания лжи (укрывательства, искажения )
В качестве задач, приводящих к односторонним функциям, можно привести следующие.
Разложение числа на простые сомножители.
Вычислить произведение двух простых чисел очень просто. Однако, для решения обратной задачи - разложения заданного числа на простые сомножители, эффективного алгоритма в настоящее время не существует.
Дискретное логарифмирование в конечном простом поле (проблема Диффи-Хеллмана).
Допустим, задано большое простое число q и пусть а• - примитивный элемент поля GF(q). Тогда для любого x вычислить ax (mod q) просто, а вычислить x по заданным k = ax (mod q) и q оказывается затруднительным.
Во всех криптосистемах с открытым ключом чем больше длина ключа, тем выше различие между усилиями, необходимыми для вычисления функции в прямом и обратном направлениях (для того, кто не обладает информацией о ловушке).
Все практические криптосистемы с открытым ключом основываются на функциях, считающихся односторонними, но это свойство не было доказано в отношении ни одной из них.
Это означает, что теоретически возможно создание алгоритма, позволяющего легко вычислять обратную функцию без знания информации о ловушке. В таком случае криптосистема, основанная на этой функции, станет бесполезной.
Схема шифрования с открытым ключом
Пусть К— пространство ключей,
e и d— ключи шифрования и расшифрования соответственно.
Ее — функция шифрования для произвольного ключа е&K, (&- принадлежит) такая что: Ее(т) = с
Здесь:
с&С, где С — пространство шифротекстов,
т&M, где М— пространство сообщений.
Dd(c) — функция расшифрования, с помощью которой можно найти исходное сообщение т, зная шифротекст с :
Dd(c) = т
{Ее.: е&K) — набор шифрования,
{Dd:: d&K } — соответствующий набор для расшифрования.
Каждая пара (Е,D) имеет свойство: зная Ее,(m) невозможно решить уравнение Ее(т) = с, то есть для данного произвольного шифротекста с&С, невозможно найти сообщение т&М. Это значит, что по данному е невозможно определить соответствующий ключ расшифрования d.
Ее является односторонней функцией, а d — ловушкой.
Ниже показана схема передачи информации лицом А лицу В. Они могут быть как физическими лицами, так и организациями и так далее. Но для более лёгкого восприятия принято участников передачи отождествлять с людьми, чаще всего именуемых Алиса и Боб. Участника, который стремится перехватить и расшифровать сообщения Алисы и Боба, чаще всего называют Евой.
d m
А Генерирование > Расшифрование > Пункт назначения
Ключа (d) Dd(c) = m
_______________________________________________________________
e
Открытый
канал
c
Открытый
канал
В
Шифрование Исходный
текст
Ee (m) = c m
1. Боб выбирает пару (е,d) и шлёт ключ шифрования е (открытый ключ) Алисе по открытому каналу, а ключ расшифрования d (закрытый ключ) защищен и секретен (он не должен передаваться по открытому каналу, либо его подлинность должна быть гарантирована некоторым сертифицирующим органом).
2 Чтобы послать сообщение т Бобу, Алиса применяет функцию шифрования, определённую открытым ключом е: Ее(т) = с, с — полученный шифротекст.
3. Боб расшифровывает шифротекст с, применяя обратное преобразование Dd однозначно определённое значением d.