Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2. Часть 1.doc
Скачиваний:
103
Добавлен:
02.06.2015
Размер:
5.54 Mб
Скачать

4.3. Схема цифровой подписи с использованием однонаправленной функции

Диффи и Хеллман предложили следующий принцип построения схемы цифровой подписи. Пользователь A выбирает однонаправленную функцию с секретом F: YX, алгоритм вычисления значений F публикует,  оставляет в секрете. Для того чтобы подписать сообщение xX, он находит такое yY, что F(y) = x, и посылает его вместе с x. Получив пару (x,y), пользователь B проверяет равенство F(y)=x. Выполнение этого равенства означает, что источником сообщения x является пользователь A, владеющий секретом .

Криптографические системы с открытым ключом обеспечивают решение проблемы цифровой подписи, если они удовлетворяют следующему условию: X=Y и для каждого K отображение E обратно к D, то есть для любых K, xX E(D(x)) = x.

Пусть пользователь A хочет послать подписанное несекретное сообщение пользователю B. Для этого A строит ключ =(1,2) и посылает 1 пользователю B. Сообщение x пользователь A шифрует с помощью своего личного ключа 2, получая, таким образом, подпись y=D2(x), и посылает ее B. Раньше, когда при передаче информации требовалась только секретность, с помощью алгоритма D2 владелец ключа  расшифровывал получаемые им сообщения, теперь же он использует этот алгоритм для зашифрования или подписи. Используя алгоритм E1, пользователь B может вычислить x из полученного y и убедиться таким образом, что отправителем сообщения x является A. Подпись y он сохраняет как доказательство того, что пользователь A прислал ему сообщение x. Если позднее A откажется от факта посылки этого сообщения, то B может предъявить суду подпись y. Суд возьмет открытый ключ 1 пользователя A и установит, что E1(y) является осмысленным сообщением. Так как только A знает секретный ключ 2, то только он может быть источником этого сообщения, поэтому A неизбежно придется отвечать за посылку сообщения x.

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

Под открытым распределением ключей понимают последовательность действий двух или более пользователей, в результате выполнения которой им становится доступна некоторая общая секретная информация (ключ). При этом любой другой пользователь, следящий за передаваемыми по каналу связи сообщениями, эту секретную информацию определить не в состоянии. В работе [DH. W.Diffie, M.E. Hellman. New directions in cryptography, IEEE Transactions on Information Theory, v.IT-22, N.6, November,1976, pp.644-654] был предложен так называемый экспоненциальный ключевой обмен, который в настоящее время называется схемой открытого распределения ключей Диффи-Хеллмана. Данная схема основана на использовании функции возведения в степень в мультипликативной группе простого поля: , гдеp – простое число,  – примитивный элемент поля GF(p), 1xp-1. Эта функция является кандидатом в однонаправленные. Действительно, она легко вычислима, так как, используя метод квадратов, значения этой функции можно вычислять с полиномиальной сложностью, оцениваемой величиной O((log p)3), в то время как обратная задача – задача инвертирования функции – является сложной. Для инвертирования функции f(x) необходимо уметь решать уравнение , то есть уметь решать задачу дискретного логарифмирования в мультипликативной группе простого поля. В настоящее время не известно достаточно эффективных (полиномиальных относительноlogp) алгоритмов дискретного логарифмирования в мультипликативной группе GF(p)* поля. Этот факт и лежит в основе стойкости данной схемы открытого распределения ключей. Опишем ее.

Пусть два пользователя A и B хотят выработать общий ключ. Для этого они заранее определяют элементы p и , которые считаются общедоступными. Оба пользователя случайно выбирают по одному натуральному числу xA и xB: 1xA, xBp-1 и оставляют их в секрете. После этого выполняется следующая последовательность шагов.

1) A вычисляет элемент yA =и посылает егоB;

2) B вычисляет элемент yB =и посылает егоA;

3) A вычисляет элемент ;

4) B вычисляет элемент .

Таким образом, A и B получают общий элемент поля GF(p), равный , который и объявляется их общим ключом. Пассивный криптоаналитик получает в свое распоряжение величиныp, , ,и хочет определить. Эта задача называется проблемой Диффи-Хеллмана. В настоящее время не найдено более эффективного решения этой проблемы, чем дискретное логарифмирование.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]