Вперед: IV. Теоретические основы
Вверх: 9.3 Анализ возможностей использования интеллектуальными карточками вспомогательных вычислителей
Назад: 9.3.4 Активная атака на протокол RSA-S1
  Содержание
  Предметный указатель
9.3.5 Ускорение операций в схемах подписи типа
DSS
В работе [BQ94] предлагается метод ускорения операций
в схемах подписи DSS [DSS],
Шнорра [Sch], и в других подобных протоколах (в том числе,
в схеме подписи ГОСТ Р 34.10-94), который является, по
утверждению авторов, безопасным как против пассивных, так и
против активных атак, когда сервер посылает ложные
сообщения для получения полезной для себя информации.
В дальнейшем модулярные умножения будут рассматриваться
как умножение 512-битовых
чисел. Пусть -- длина числа в битах,
то есть
.
Вычисление
. Пусть , ,
-- неотрицательные целые числа и . Карточка
передает серверу значения , , . Сервер должен
вычислить
, а интеллектуальная карточка --
убедиться, что результат
корректен с высокой вероятностью.
Протокол M
1.
Интеллектуальная карточка выбирает секретных
простых чисел
таких, что для всех
.
2.
Интеллектуальная карточка отсылает , ,
серверу.
3.
Сервер вычисляет
и
и отсылает и интеллектуальной
карточке.
4.
Интеллектуальная карточка проверяет, что и
, а затем для каждого проверяет выполнение
равенства
О корректности данного протокола говорит следующая
теорема [BQ94].
Теорема 2.
Пусть , , -- неотрицательные целые числа такие,
что
и
. Если интеллектуальная карточка выбирает секретно
случайных простых чисел размера , то вероятность
принятия неправильного значения не превышает
,
где -- число простых чисел размера .
Вычисление
. Пусть и
.
Пусть
-- процедура, проверяющая,
что
.
Протокол E
1.
Интеллектуальная карточка выбирает случайным
образом простое число , .
2.
Интеллектуальная карточка отсылает серверу , , .
3.
Сервер вычисляет и выдает интеллектуальной
карточке значения векторов
,
,
,
такие, что
- для каждого
где
- для каждого
где
4.
Интеллектуальная карточка выполняет процедуры
для всех
и
для
всех
.
Если на 4 шаге все проверки завершены успешно,
то
.
Теорема 3.
Если и -- неотрицательные
целые числа длиной не более 512 битов и такие что , то
вероятность того, что интеллектуальная карточка примет
ложное значение
, не более , если
(случай a)), и не более
, если (случай b)).
Понятно, что в обоих указанных случаях
обеспечивается корректность протоколов, но не секретность
в отношении каких-либо аргументов вычисляемых функций,
в то время как для генерации, например DSS-подписи,
требуется, чтобы секретная экспонента не была разглашена
серверу или прослушивающему канал противнику. В
работе [BQ94] приводится также протокол, который,
по утверждению авторов,
обладает обоими этими свойствами, то есть свойствами
корректности и секретности в отношении экспоненты.
В этом протоколе интеллектуальной карточке необходим
вспомогательный алгоритм вычисления значения функции
при помощи сервера. Пусть
, где
и пусть известны для каждого , тогда
вычисляется при помощи алгоритма, показанного на
рис. 15. В этом алгоритме умножения являются
модулярными, значения
вычисляются сервером,
значение вычисляется интеллектуальной карточкой.
Рис. 15
|
Ниже приводится протокол, предлагаемый [BQ94] для
использования в схемах подписи.
Протокол DE
Пусть
, например, 160 битов для DSS и
256 битов для ГОСТ Р 34.10-94.
Предположим также, что
, где
.
1.
Интеллектуальная карточка выбирает случайным
образом простое число размера и посылает
серверу , , и .
2.
Сервер посылает интеллектуальной карточке
значения
, где
и
. Так как интеллектуальная карточка знает и ,
она может проверить так же, как в протоколе E, затем
таким же образом проверить и т. д. В случае
корректного завершения этих проверок интеллектуальная
карточка может вычислить
, используя алгоритм
BGCW.
Теорема 4.
Пусть и -- неотрицательные
целые числа длиной не более 512 битов и такие что .
Тогда вероятность того, что интеллектуальная карточка
примет ложное значение
, не более в
случае a) и не более в случае b).
Доказательство корректности основывается на
теоремах 2 и 3. Безопасность протокола
авторами работы [BQ94] обосновывается следующим
образом. Поскольку значения параметров, полученные
интеллектуальной карточкой от
сервера, независимы от , протокол
безопасен относительно пассивной атаки. Если сервер
посылает некоторые ложные сообщения с целью получения
какой-либо полезной для себя информации,
то интеллектуальная карточка обнаружит это с вероятностью
не менее
или
. Следовательно,
интеллектуальная карточка просто не будет использовать
значение
. Поэтому протокол безопасен и против
активной атаки.
Таким образом, ускорение безопасным образом вычислений
для генерации цифровых подписей типа DSS осуществляется
за счет реализации криптографических протоколов в
системе "интеллектуальная карточка -- сервер".
При этом коэффициент ускорения находится в диапазоне
от 2,8 до 4 без снижения уровня безопасности
вычислений [BQ94].
Вперед: IV. Теоретические основы
Вверх: 9.3 Анализ возможностей использования интеллектуальными карточками вспомогательных вычислителей
Назад: 9.3.4 Активная атака на протокол RSA-S1
  Содержание
  Предметный указатель
|