Цифровая сигнатура

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

Цифровая сигнатура - это строка символов, зависящая как от идентификатора отправителя, так и содержания сообщения.

Никто при этом кроме пользователя А не может вычислить цифровую сигнатуру А для конкретного сообщения. Никто, даже сам пользователь не может изменить посланного сообщения так, чтобы сигнатура осталась неизменной. Хотя получатель должен иметь возможность проверить является ли цифровая сигнатура сообщения подлинной. Чтобы проверить цифровую сигнатуру, пользователь В должен представить посреднику С информацию, которую он сам использовал для верификации сигнатуры.

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

Рассмотрим типичную схему цифровой сигнатуры.

Пусть Е - функция симметричного шифрования и f - функция отображения некоторого множества сообщений на подмножество мощности р из последовательности {1,..., n }.

Например р=3 и n =9. Если m - сообщение, то в качестве f можно взять функцию f (m) = {2, 5, 7}.

Для каждого сообщения пользователь А выбирает некоторое множество ключей K =[ K 1,..., K n} и параметров V={v1,...,vn} для использования в качестве пометок сообщения, которое будет послано В. Множества V и V’={E(v1, K 1)..., E(vn, K n)} посылаются пользователю В и заранее выбранному посреднику С.

Пусть m - сообщение и idm - объединение идентификационных номеров отправителя, получателя и номера сообщения. Если f( {idm, m }), то цифровая сигнатура m есть множество K ’=[ K i,..., K j}. Сообщение m, идентификационный номер idm и цифровая сигнатура К’ посылаются В.

Получатель В проверяет сигнатуру следующим образом. Он вычисляет функцию f( {idm, m }) и проверяет ее равенство К’. Затем он проверяет, что подмножество {vi,...,vj} правильно зашифровано в виде подмножества {E(vi, K i)..., E(vj, K j)} множества V’.

В конфликтной ситуации В посылает С сообщение m, идентификационный номер idm и множество ключей K ’, которое В объявляет сигнатурой m. Тогда посредник С так же, как и В, будет способен проверить сигнатуру. Вероятность раскрытия двух сообщений с одним и тем же значением функции f должна быть очень мала. Чтобы гарантировать это, число n должно быть достаточно большим, а число р должно быть больше 1, но меньше n.

Ряд недостатков этой модели очевиден:

* должно быть третье лицо - посредник, которому доверяют как получатель, так и отправитель;

* получатель, отправитель и посредник должны обменяться существенным объемом информации, прежде чем будет передано реальное сообщение;

* передача этой информации должна осуществляться в закрытом виде;

* эта информация используется крайне неэффективно, поскольку множества K, V, V’ используются только один раз.

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: