Описание схем электронной подписи

Схема электронной подписи состоит из ключевого пространства К такого, что ее секретные и открытые ключи k ь е К; пространства сообщений Mk; пространства подписей Sk, где Mk = Sk и таких, что s = Da(m) для каждого сообщения т е Mk и подписи s е Sk. Алгоритмы D(l и Еь называются алгоритмом генерации подписи (или просто алгоритмом подписи) и алгоритмом верификации подписи (проверки подписи) соответственно. Имеется также алгоритм Аиалгоритм генерации (получения) секретных и отрытых ключей для данной схемы подписи. Участник схемы, создающий подпись, называется подписывающим (S), участник схемы, осуществляющий проверку этой подписи, называется проверяющим (V). Схема электронной подписи является стойкой, если только законный участник S может эффективно вычислить Da, в то время как криптоаналитик (противник) не может этого сделать.

Схемы электронной подписи бывают двух типов: схема с восстановлением сообщения[1] и схема подписи без восстановления сообщения[2].

Схема электронной подписи с восстановлением сообщения работает следующим образом. Если участник S желает поставить свою электронную подпись под сообщением т, он инициирует работу алгоритма Ак для получения своего секретного ключа а, который будет соответствовать открытому ключу Ь. Всякий раз, когда участнику S необходимо подписать сообщение т е Мк и послать его участнику V, участник S использует алгоритм D(l, чтобы выполнить s = DJjri). Затем S посылает s и т участнику V по открытому (небезопасному) каналу связи и V, используя алгоритм Еь и полученные из канала s* и т*, открывает т** = Eb(s*) и сравнивает: т** = т*? Если равенство выполняется, то сообщение т* действительно соответствует подписи л*, полученной при помощи секротного ключа а, который, в свою очередь, соответствует открытому ключу b и, наоборот, если равенство не выполняется, то сообщение т ложно и (или) это сообщение подписано ложным секретным ключом.

Схема электронной подписи без восстановления сообщения работает аналогично вышеописанной схеме, за исключением того, что участник S на этапе верификации подписи, используя алгоритм Еь и полученные из канала 5* и т*, выполняет 5* = Eb(jn) и сравнивает: s** = s*? И так же как и в предыдущем случае, если равенство выполняется, то сообщение т действительно соответствует подписи s*у а если — нет, то сообщение т ложно и (или) это сообщение подписано ложным секретным ключом.

Как и в криптосистемах с открытым ключом, в схеме электронной подписи открытые ключи делаются общедоступным. Это также делается, как правило, путем помещения открытых ключей пользователей с соответствующими дополнительными атрибутами в общедоступный сертифицированный справочник. Сертификация открытых ключей справочника выполняется некоторым дополнительным надежным элементом, которому все пользователи системы доверяют обработку этих ключей. Обычно этот элемент называют удостоверяющим центром[3]. А весь процесс работы с открытыми ключами поручается так называемой инфраструктуре открытых ключей, речь о которой пойдет в гл. 5 и 6 настоящего издания.

Под стойкостью схемы цифровой подписи понимается стойкость в теоретико-сложностном смысле, т.е. как отсутствие эффективных алгоритмов ее подделки и (или) раскрытия. По-видимому, до сих пор основной является следующая классификация:

  • атака с открытым ключом, когда противник знает только открытый ключ схемы;
  • атака с известными сообщениями, когда противник получает подписи для некоторого (ограниченного) количества известных ему текстов (при этом противник никак не может повлиять на выбор этих тестов);
  • атака с выбором сообщений, когда противник может получить подписи для некоторого ограниченного количества выбранных им сообщений (предполагается, что сообщения выбираются независимо от открытого ключа, например, до того как открытый ключ станет известен);
  • направленная атака с выбором сообщения (то же, что предыдущая, но противник, выбирая сообщение, уже знает открытый ключ);
  • адаптивная атака с выбором сообщения, когда противник выбирает сообщения последовательно, зная открытый ключ и зная на каждом шаге подписи для всех ранее выбранных сообщений.

Атаки перечислены таким образом, что каждая последующая сильнее предыдущей.

Угрозами для схем электронной подписи являются раскрытие схемы или подделка подписи. Определяются следующие типы угроз:

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

Угрозы перечислены в порядке ослабления. Стойкость схемы электронной подписи определяется относительно пары (тип атаки, тип угрозы).

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

  • [1] Типичный пример — схема RSA (см. далее).
  • [2] Типичный пример — схемы Эль-Гам ал я (см. далее) или схемы ГОСТ Р34.10-94.
  • [3] Его деятельность (точнее, деятельность системы центров разного уровня)в нашей стране регламентируется положениями Федерального закона от 06.04.2011№ 63-ФЗ «Об электронной подписи» (см. гл. 5).
 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ   ОРИГИНАЛ     След >