Ремонт принтеров, сканнеров, факсов и остальной офисной техники


назад Оглавление вперед




[14]

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

Скорость заметно возрастает и, так как вероятность получить для двух различных документов одинаковое 160-битное значение хэш-функции составляет только один шанс из 2160, можно безопасно приравнять подпись значения хэш-функции и подпись документа. Должна использоваться только однонаправленная хэш-функция, иначе создать разные документы с одним и тем же значением хэш-функции нетрудно, и подпись одного док у-мента приведет к ошибочной подписи сразу многих документов .

У протокола есть и другие выгоды. Во первых, подпись может быть отделена от документа. Во вторых, зн а-чительно уменьшаются требования к объему памяти получателя, в котором хранятся документы и подписи . Архивная система может использовать этот протокол для подтверждения существования документов, не храня их содержания. В центральной базе данных могут храниться лишь значения хэш-функции для файлов . Вовсе не нужно просматривать файлы, пользователи помещают свои значения хэш-функции в базу данных, а база да н-ных хранит эти значения, помечая их временем получения документа. Если в будущем возникнет какое-нибудь разногласие по поводу автора и времени создания документа, база данных сможет разрешить его при помощи хранящегося в ней значения хэш-функции. Подобная система имеет большое значение при хранении секретной информации: Алиса может подписать документ и сохранить его в секрете . Ей понадобится опубликовать документ, только если она захочет доказать свое авторство . (См. раздел 4.1).

Алгоритмы и терминология

Существует множество алгоритмов цифровой подписи. Все они представляют собой алгоритмы с открытыми ключами с закрытой частью для подписи документов и с открытой - для проверки подписи . Иногда процесс подписи называют шифрованием с закрытым ключом, а процесс проверки подписи - дешифрированием с открытым ключом. Это может ввести в заблуждение, являясь справедливым только для одного алгоритма, RSA. У других алгоритмов - другие реализации. Например, использование однонаправленных хэш-функций и меток времени иногда приводит к появлению дополнительных этапов при подписании и проверке подписи . Многие алгоритмы можно использовать для цифровой подписи, но нельзя для шифрования .

В общем случае я буду ссылаться на процессы подписи и проверки , не вдаваясь в подробности алгоритмов. Подпись сообщения с закрытым ключом К будет обозначаться как:

а проверка подписи с помощью соответствующего открытого ключа как : Vk(M)

Строку битов, присоединенную к документу после его подписания (в предыдущем примере, значение одн о-направленной хэш-функции документа, зашифрованное зарытым ключом ), будем называть цифровой подписью или просто подписью. Весь протокол, с помощью которого получатель сообщения проверяет личность о т-правителя и целостность сообщения, называется удостоверением подлинности. Более подробно эти протоколы рассматриваются в разделе 3.2.

Несколько подписей

Как Алисе и Бобу одновременно подписать один и тот же документ? В отсутствие однонаправленных хэш-функций существует две возможности. Алиса и Боб могут подписать различные копии одного и того же документа. Полученное сообщение будет в два раза длиннее первоначального документа . Или Алиса подписывает документ, а затем Боб подписывает подпись Алисы . Этот способ работает, но проверить подпись Алисы, не проверяя при этом подписи Боба, невозможно .

С помощью однонаправленных реализовать несколько подписей просто :

(1)Алиса подписывает значение хэш-функции документа.

(2)Боб подписывает значение хэш-функции документа.

(3)Боб посылает свою подпись Алисе.

(4)Алиса посылает Кэрол документ, свою подпись и подпись Боба.

(5)Кэрол проверяет подписи Алисы и Боба.

Алиса и Боб могут выполнить этапа (1) и (2) или параллельно, или последовательно . На этапе (5) Кэрол может проверить любую подпись независимо от другой .


Невозможность отказаться от цифровой подписи

Алиса может смошенничать с цифровыми подписями, и с этим ничего нельзя поделать. Она может подп и-сать документ и затем утверждать, что она этого не делала. Сначала она, как обычно, подписывает письмо. З а-тем она анонимно раскрывает свой закрытый ключ или теряет в людном месте . Теперь Алиса утверждает, что ее подпись была скомпрометирована и использована кем-то другим, выдающим себя за нее. Она дезавуирует свою подпись под всеми документами, подписанными с помощью этого закрытого ключа . Это называется отказ от подписи.

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

Хотя с подобным злоупотреблением ничего нельзя сделать, можно предпринять некоторые действия, гара н-тирующие то, что старые подписи не будут признаны недостоверными из-за разногласий по новым подписям . (Например, Алиса может "потерять" свой ключ, чтобы не платить Бобу за подержанную машину, которую он вчера ей продал и, в результате, сделает недействительным свой банковский счет .) Получателю нужно проставлять метки времени для полученных документов [453]. Общая схема протокола приведена в [2, 8]:

(1)Алиса подписывает сообщение.

(2)Алиса создает заголовок, содержащий некоторую идентификационную информацию. Она присоединяет к заголовку подписанное сообщение, подписывает все вместе и посылает Тренту.

(3)Трент проверяет внешнюю подпись и подтверждает идентификационную информацию. Он добавляет ме тку времени к подписанному сообщению Алисы и идентификационной информации. Затем он подписывает все вместе и посылает пакет Алисе и Бобу.

(4)Боб проверяет подпись Трента, идентификационную информацию и подпись Алисы.

(5)Алиса проверяет сообщение, которое Трент послал Бобу. Если она не признает свое авторство, она быстро заявляет об этом.

В другой схеме Трент используется в качестве арбитра [209]. Получив подписанное сообщение, Боб посылает копию Тренту для проверки. Трент может подтвердить подпись Алисы.

Использование цифровых подписей

Одним из самых ранних предложенных применений цифровых подписей было упрощение проверки собл ю-дения договоров о ядерных испытаниях [1454, 1467]. Соединенные Штаты и Советский Союз (кто-нибудь помнит Советский Союз?) разрешили друг другу разместить на чужой территории сейсмографы для слежения за ядерными испытаниями. Проблема была в том, что каждая из сторон должна была уверена в том, что другая сторона не подделала данные этих сейсмографов . Одновременно, другая сторона должна была быть уверена, что эти датчики посылают только ту информацию, которая нужна для слежения за ядерными испытаниями .

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

2.7 Цифровые подписи и шифрование

Объединив цифровые подписи и криптографию с открытыми ключами, мы разрабатываем протокол, комб и-нирующий безопасность шифрования и достоверность цифровых подписей . Сравните с письмом от вашей маиы. Подпись удостоверяет авторство а конверт обеспечивает тайну .

(1)Алиса подписывает сообщение с помощью своего закрытого ключа. Sa(M)

(2)Алиса шифрует подписанное сообщение открытым ключом Боба и посылает его Бобу. Eb (Sa(M))

(3)Боб расшифровывает сообщение с помощью своего закрытого ключа. Db (Eb (Sa(M)))= Sa(M)

(4)Боб проверяет подпись с помощью открытого ключа Алисы и восстанавливает сообщение. Va (Sa(M))= M


Подпись перед шифрованием выглядит естественно. Когда Алиса пишет письмо, она подписывает его и затем кладет в конверт. Если она положит письмо в конверт неподписанным, то Боб может забеспокоиться, вдруг письмо было тайно подменено . Если Боб покажет Кэрол письмо Алисы и конверт, Кэрол может обвинить Боба, что он врет о том, какое письмо в каком конверте пришло .

В электронной корреспонденции точно также является разумным использование подписи перед шифрован и-ем [48]. Это не только более безопасно - враг не сможет удалить подпись из шифрованного сообщения и доб а-вить свою собственную - но существуют и юридические соображения : если подписываемый текст не виден по д-писывающему, когда он ставит подпись, то юридическая сила подписи невелика [1312]. Существуют также некоторые криптографические способы вскрытия такой последовательности действий, использующей подписи RSA (см. раздел 19.3).

Для Алисы не существует причин использовать одну пару ключей - открытый/закрытый - для шифрования и подписи. У нее может быть две пары ключей: одна для шифрования и одна для подписи . У такого разделения есть свои преимущества: Алиса может передать свой ключ шифрования полиции, не компрометируя свою по д-пись, один ключ может быть условно передан (см. раздел 4.13), не влияя на другой. У ключей могут быть различные длины и сроки действия.

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

Возвращение сообщения при приеме

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

(1)Алиса подписывает сообщение с помощью своего закрытого ключа, шифрует подписанное сообщение открытым ключом Боба и посылает его Бобу.

Eb (Sa(M))

(2)Боб расшифровывает сообщение с помощью своего закрытого ключа, проверяет подпись с помощью о т-крытого ключа Алисы и восстанавливает сообщение.

Va (Db (Eb (Sa(M))))= M

(3)Боб подписывает сообщение с помощью своего закрытого ключа, шифрует подписанное сообщение открытым ключом Алисы и посылает его Алисе обратно.

Ea (Sb(M))

(4)Алиса расшифровывает сообщение с помощью своего закрытого ключа и проверяет подпись с помощью открытого ключа Боба. Если полученное сообщение совпадает с отправленным, она знает, что Боб пол учил правильное сообщение.

Если для шифрования и проверки цифровой подписи используется один и тот же алгоритм, то существует возможность вскрытия [506]. В таких случаях операция цифровой подписи - противоположность операции шифрования: Vx = EX и SX = DX.

Пусть Мэллори - зарегистрированный пользователь со своей парой ключей: открытым и закрытым . Теперь посмотрим, как он сможет читать почту Боба. Сначала он запишет сообщение Алисы Бобу - этап (1) . Затем, немного погодя, он пошлет это сообщение Бобу, утверждая, что оно отправлено самим Мэллори. Боб, думая, что это обычное сообщение от Мэллори, дешифрирует это сообщение своим закрытым ключом и пытается пров е-рить подпись Мэллори, дешифрируя ее с помощью открытого ключа Мэллори . В результате получается полная чепуха:

Ea (Db (Eb (Da(M)))) = Em (Da(M))

Даже в этом случае, следуя протоколу, Боб посылает Мэллори полученное сообщение : Em (Db (Em (Da(M))))

Теперь Мэллори остается только расшифровать сообщение с помощью своего закрытого ключа, зашифр о-вать его открытым ключом Боба, расшифровать снова с помощью своего закрытого ключа и зашифровать открытым ключом Алисы. Voilal Мэллори получает М.

Отнюдь не глупо предположить, что Боб может автоматически посылать Мэллори квитанцию. Этот прот о-кол, например, может быть встроен в его коммуникационное программное обеспечение и посылать квитанции автоматически. Именно готовность сообщить о приеме чепухи и нарушает безопасность . Если Боб проверит сообщение на осмысленность перед отправкой квитанции, он сможет избежать таких проблем с безопасностью .



[стр.Начало] [стр.1] [стр.2] [стр.3] [стр.4] [стр.5] [стр.6] [стр.7] [стр.8] [стр.9] [стр.10] [стр.11] [стр.12] [стр.13] [стр.14] [стр.15] [стр.16] [стр.17] [стр.18] [стр.19] [стр.20] [стр.21] [стр.22] [стр.23] [стр.24] [стр.25] [стр.26] [стр.27] [стр.28] [стр.29] [стр.30] [стр.31] [стр.32] [стр.33] [стр.34] [стр.35] [стр.36] [стр.37] [стр.38] [стр.39] [стр.40] [стр.41] [стр.42] [стр.43] [стр.44] [стр.45] [стр.46] [стр.47] [стр.48] [стр.49] [стр.50] [стр.51] [стр.52] [стр.53] [стр.54] [стр.55] [стр.56] [стр.57] [стр.58] [стр.59] [стр.60] [стр.61] [стр.62] [стр.63] [стр.64] [стр.65] [стр.66] [стр.67] [стр.68] [стр.69] [стр.70] [стр.71] [стр.72] [стр.73] [стр.74] [стр.75] [стр.76] [стр.77] [стр.78] [стр.79] [стр.80] [стр.81] [стр.82] [стр.83] [стр.84] [стр.85] [стр.86] [стр.87] [стр.88] [стр.89] [стр.90] [стр.91] [стр.92] [стр.93] [стр.94] [стр.95] [стр.96] [стр.97] [стр.98] [стр.99] [стр.100] [стр.101] [стр.102] [стр.103] [стр.104] [стр.105] [стр.106] [стр.107] [стр.108] [стр.109] [стр.110] [стр.111] [стр.112] [стр.113] [стр.114] [стр.115] [стр.116] [стр.117] [стр.118] [стр.119] [стр.120] [стр.121] [стр.122] [стр.123] [стр.124] [стр.125] [стр.126] [стр.127] [стр.128] [стр.129] [стр.130] [стр.131] [стр.132] [стр.133] [стр.134] [стр.135] [стр.136] [стр.137] [стр.138] [стр.139] [стр.140] [стр.141] [стр.142] [стр.143] [стр.144] [стр.145] [стр.146] [стр.147] [стр.148] [стр.149] [стр.150] [стр.151] [стр.152] [стр.153] [стр.154] [стр.155] [стр.156] [стр.157] [стр.158] [стр.159] [стр.160] [стр.161] [стр.162] [стр.163] [стр.164] [стр.165] [стр.166] [стр.167] [стр.168] [стр.169] [стр.170] [стр.171] [стр.172] [стр.173] [стр.174] [стр.175] [стр.176] [стр.177] [стр.178] [стр.179] [стр.180] [стр.181] [стр.182] [стр.183] [стр.184] [стр.185] [стр.186] [стр.187] [стр.188] [стр.189] [стр.190] [стр.191] [стр.192] [стр.193] [стр.194] [стр.195] [стр.196] [стр.197] [стр.198] [стр.199] [стр.200] [стр.201] [стр.202] [стр.203]