Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции / Лекция 13.ppt
Скачиваний:
113
Добавлен:
28.06.2014
Размер:
844.29 Кб
Скачать

ЛЕКЦИЯ 13. АСИММЕТРИЧНАЯ

КРИПТОГРАФИЯ И ЕЕ ПРИМЕНЕНИЕ

Содержание лекции

1.Криптографические системы Диффи-Хеллмана, Эль-Гамаля и эллиптических кривых.

2.Электронная цифровая подпись и ее применение. Функции хеширования.

3.Протокол SSL.

Протокол Диффи-Хеллмана

Предназначен для генерации сеансового ключа симметричного шифрования, который затем будет использован субъектами A и B для защищенного обмена сообщениями по открытой сети:

1.A: выбирает xa и вычисляет ya=axa {mod p} (p – простое число или степень простого числа, 1<a<p-1).

2.B: выбирает xb и вычисляет yb=axb {mod p}.

3.A->B: ya.

4.B->A: yb.

Протокол Диффи-Хеллмана

5.A: вычисляет ka=(yb)xa {mod p}.

6.B: вычисляет kb=(ya)xb {mod p}.

7.Конец (ka=(yb)xa {mod p}=(axb)xa {mod p}=axb∙xa {mod p}=axa∙xb {mod p}=kb и созданный ключ может теперь использоваться для защищенного обмена сообщениями между A и B).

Открытый ключ: a, p, ya (yb).

Закрытый ключ: xa (xb).

Протокол Диффи-Хеллмана

Основан на вычислительной сложности задачи дискретного логарифмирования: вычисление y=ax {mod p} (p – простое число или степень простого числа, 1<x<p-1, 1<a<p-1) выполняется просто, но вычисление x=logay {mod p} выполняется весьма сложно.

Значения a и p в системе Диффи-Хеллмана не являются секретными, поскольку, даже зная их, нарушитель не сможет решить задачу дискретного логарифмирования и найти значения xa и xb, чтобы вычислить сгенерированный ключ симметричного шифрования (однако необходимо получение A и B этих параметров из надежного источника).

Криптосистема Эль-

Гамаля

• Является модификацией криптосистемы Диффи-Хеллмана. Значение a вместе со значениями p и y составляет открытый ключ, а закрытым ключом является значение x (y=ax {mod p}). Шифрование открытого текста P в криптосистеме Эль-Гамаля:

1.Выбор случайного целого числа k (1<k<p-1 и НОД(k, p-1)=1).

2.C1=ak {mod p}.

3.C2=P•yk {mod p}.

4.Конец (шифротекстом являются значения C1 и C2).

Гамаля

• Расшифрование производится путем составления сравнения P•C1x=C2

{mod p} и решения его относительно P. Действительно P• C1x {mod p}=P•(ak)x {mod p}=P•(ax)k

{mod p}=P•yk {mod p}=C2 {mod p}.

• Если P≥p, то открытый текст должен быть разбит на блоки, длина которых равна длине числа p.

Гамаля

• В пункте 3 алгоритма шифрования вместо операции умножения может использоваться операция сложения по модулю 2 (C2=P yk {mod p}). Тогда при расшифровании восстановление открытого текста выполняется так:

P=(C1x {mod p}) C2 (так как C1x {mod p}=yk {mod p}).

Недостатком этого варианта является то, что открытый текст должен разбиваться на блоки заранее неизвестной длины yk {mod p}.

Криптосистема на основе

эллиптических кривых

Используются алгебраические структуры, определенные на множестве точек на эллиптической кривой:

{(x, y) | y2=x3+ax+b} U {( , )}.

Для точек на эллиптической кривой вводится операция сложения (добавления новой точки по двум известным), которая допускает простую реализацию и играет ту же роль, что и операция дискретного возведения в степень в криптосистемах Диффи- Хеллмана и Эль-Гамаля.

Криптосистема на основе

эллиптических кривых

Определив, таким образом, операцию сложения, можно ввести и операцию умножения точки эллиптической кривой G на целое число x:

G+G+…+G(x раз)=x•G.

Если g•G=0, то g называется порядком точки G.

В реальных криптосистемах вычисление y2=x3+ax+b производится по простому модулю p. Если Y и G – две точки на эллиптической кривой, связанные соотношением Y=x•G, то значение x будет являться закрытым ключом, а значение Y вместе со значениями G, a, b и p составит открытый ключ.

Соседние файлы в папке Лекции