ВУЗ:
Составители:
лежащий в ее основе блочный шифр, и при этом весьма проста. Однако, у
нее есть два существенных недостатка.
Первый недостаток заключается в том, что данная схема позволяет
подписать лишь один бит информации. В блоке большего размера придется
отдельно подписывать каждый бит, поэтому даже с учетом хэширования
сообщения все компоненты подписи – секретный ключ, проверочная ком-
бинация и собственно подпись получаются довольно большими по размеру
и более чем на два порядка превосходят размер подписываемого блока.
Второй недостаток данной схемы менее заметен, но столь же серьезен.
Дело в том, что пара ключей выработки подписи и проверки подписи могут
быть использованы только один раз, так как выполнение процедуры подпи-
си бита сообщения приводит к раскрытию половины секретного ключа,
после чего он уже не является полностью секретным и не может быть ис-
пользован повторно. Поэтому для каждого подписываемого сообщения
необходим свой комплект ключей подписи и проверки. Это практически
исключает возможность использования рассмотренной схемы Диффи-
Хеллмана в первоначально предложенном варианте в реальных системах
ЭЦП.
Однако, несколько лет назад Березин и Дорошкевич предложили мо-
дификацию схемы Диффи-Хеллмана, фактически устраняющую ее недос-
татки.
Центральным в этом подходе является алгоритм "односторонней
криптографической прокрутки", который в некотором роде может служить
аналогом операции возведения в степень. Предположим, что имеется крип-
тографический алгоритм E
k
с размером блока данных и ключа соответст-
венно п и n
k
бит, причем п < n
k
. Пусть также имеется некоторая функция
отображения n – битовых блоков данных в n
k
– битовые
(), ,
K
nn K
YP XX nY n
→
===
. Определим рекурсивную функцию R
k
"одно-
сторонней прокрутки" блока данных Т размером п бит k раз (k > 0) при по-
мощи формулы
1
(()
,0,
()
(), 0
nn k
k
k
PRT
Tk
RT
EXk
→−
=
=
>
где Х – произвольный несекретный n-битовый блок данных, являющийся
параметром процедуры прокрутки. По своей идее функция односторонней
прокрутки чрезвычайно проста, надо всего лишь нужное количество раз (K)
выполнить следующие действия: расширить n-битовый блок данных Т до
размера ключа использованного алгоритма шифрования (n
k
), на получен-
ном расширенном блоке как на ключе зашифровать блок данных X, резуль-
тат зашифрования занести на место исходного блока данных (T). По опре-
делению операция R
k
(Т) обладает двумя важными свойствами.
1. Аддитивность и коммутативность по числу прокручиваний:
'' '
( ) ( ( )) ( ( ))
kk k k k k
RTRRT RRT
+
=
=
.
2. Односторонность или необратимость прокрутки: если известно
только некоторое значение функции R
k
(T), то вычислительно невозможно
найти значение R
k’
(T), для любого k' < k – если бы это было возможно, то
был бы способ определить ключ шифрования по известному входному и
выходному блоку алгоритма Е
k
, что противоречит предположению о стой-
кости шифра.
При реализации данного алгоритма размер ключа проверки подписи
равен удвоенному размеру блока данных использованного блочного шиф-
ра:
2
S
kn=
.
Вычисление и проверка ЭЦП будут выглядеть следующим образом:
Алгоритм
T
n
Sig
выработки цифровой подписи для n
T
-битового блока Т
заключается в выполнении "односторонней прокрутки" обеих половин
ключа подписи Т и
21
T
n
T−−
раз соответственно:
.)( ,)() ,()(
1
12
010
kPkRssTSigS
T
Tn
T
n
T
−−
=
=
=
;
,
n
k
.
n
k
Страницы
- « первая
- ‹ предыдущая
- …
- 70
- 71
- 72
- 73
- 74
- …
- следующая ›
- последняя »