tanenbaum_seti_all.pages (525408), страница 229
Текст из файла (страница 229)
Однако лве основные категории составляют алгоритмы, основанные на сложности нахождения делителей больших чисел и вычислений дискретных логарифмов. Эти задачи считаются особенно сложными, так как математики уже много лет пьпаются их решить без особых успехов. Цифровые подписи 8БЗ Цифровые подписи Подлинность различных бумажных документов (юридических, финансовых и др.) определяется наличием или отсутствием авторизованной рукописной подписи. Фотокопии документами не считаются. Чтобы системы компьютерных со. общений могли заменить физическое перемещение документов, написанных чернилами на бумаге, нужно решить проблему подписи. Проблема разработки замены рукописной подписи довольно сложна. По существу, требуется система, с помощью которой одна сторона могла бы послагь другой стороне «подписанное» сообщение так, чтобы: + получатель мог проверить объявленную личность отправителя; + отправитель не мог позднее отрицать содержимое сообщения; + получатель не мог позднее изменить подписанное сообщение.
Первое требование существенно, например, для финансовых систем. Когда компьютер клиента заказывает компьютеру банка купить тонну золота, банковский компьютер должен быть уверен, что компьютер, пославший заказ, действительно принадлежит компании, со счета которой следует снять денежную сумму. Другими словами, банк должен иметь возможность установить подлинность клиента (а клиент — подлинность банка). Второе требование необходимо ддя защиты банка от мошенничества.
Предположим, что банк покупает топну золота, и сразу после этого цена на золото резко падает. Бесчестный клиент может подать в суд на банк, заявляя, что оп никогда не посылал заказа па покупку золота. Банк может показать сообщение в суде, но клиент будет отрицать, что посылал его. Таким образом, должно быть обсспечсно требование невозможности отречения от данных ранее обязательств. Методы составления Пифровых подписей, которые мы изучим далее, предназначены в том числе и для этого. Третье требование нужно для защиты клиента в случае, если цена на золото после его покупки банком взлетает вверх и банк пытается создать подписанное сообщение, в котором клиент просит купить не одну тонну золота, а один слиток.
При таком сценарии банк, совершив мошешшчество, забирает оставшуюся часть золота себе. Подписи с симметричным ключом Один из методов реализации цифровых подписей состоит в создании некоего центрального авторитетного органа, которому все доверяют, — назовем его, например, Большим Братом (В1я ВгогЬег, ВВ). Затем каждый пользователь выбирает секретный ключ и лично относит его в офис Большого Брата.
Таким образом, например, секретный ключ Алисы, Км известен только Алисе и Большому Брату. Когда Алиса хочет послать открытым текстом своему банкиру Бобу подписанное сообщение Р, она формирует сообщение, зашифрованное К„ (ключом ЭБ4 Глава 8. Безопасность в сетях Алисы), К„(В, Ам д Р), где  — идентификатор Боба, А„— случайное число, выбранное Алисой, г — временной штамп, подтверждающий свежесть сообщения.
Затем она посылает его Большому Брату, как показано на рис. 8.15. Большой Брат видит, что это сообщение ат Алисы, расшифровывает его и посылает Бобу. Сообщение, посылаемое Бобу, содержит открытый текст сообщения Алисы и подпись Большого Брата К (А, С, Р).
Получив подписанное сообщение, Боб может выполнять заказ Алисы. Рис. ВА Б. ЦиФровая подпись Большого Брата Что случится, если позднее Алиса станет отрицать отправку этого сообщения г Естественно, в случае возникновения подобных конфликтов конфликтующие стороны первым делом подают друг на друга в суд (по крайней мере, в Соединенных Штатах).
Наконец, когда дело попадает в суд, Алиса энергично утверждает, что она не отправляла Бобу обсуждаемое. Судья спрашивает Боба, почему он уверен, что данное сообщение пришло именно от Алисы, а не от злоумышленницы Труди. Боб сначала заявляет, что Большой Брат не принял бы сообщения от Алисы, если бы оно не было зашифровано ее ключом К„, — у злоумышленника просто нет возможности послать Большому Брату фальшивое сообщение от Алисы.
Затем Боб элегантным жестом демонстрирует суду сообщение А; К „(А, Д Р). Боб заявляет, что это сообщение подписано Большим Братом, что доказывает, что Алиса послала сообщение Р Бобу. Затем судья просит Большого Брата (которому все доверяют) проверить подпись под этим сообщением. Когда Большой Брат подтверждает, что Боб говорит правду, судья решает дело в пользу Боба. Дело закрыто. Теоретически проблема с этим протоколом цифровых подписей, который показан на рис. 8.15, может возникнуть, если злоумышленник повторно воспроизведет оба сообщения. Для минимизации вероятности этого используются временные штампы. Кроме того, Боб может просмотреть все недавние сообщения, проверяя, не встречалось ли в них такое же я,. В этом случае сообщение считается дубликатом и просто игнорируется.
Очень старые сообщения, обнаруживаемые по значению временного штампа, также игнорируются. Для зашиты от мгновенной атаки повторным воспроизведением Боб просто проверяет значение случайного числа Вм содержащегося в каждом приходящем сообщении, запоминая все такие числа, полученные за последний час. Если в течение часа такое значение получено еще не было, Боб может быть уверен, что пришедшее сообщение является новым заказом. Цифровые подписи 855 Подписи с открытым ключом Главная проблема, связанная с применением шифрования с симметричным ключом для цифровых подписей, состоит в том, что все должны согласиться доверять Большому Брату.
Кроме того, Большой Брат получает возможность читать все подписываемые им сообщения. Наиболее логичными кандидатами на управление сервером Большого Брата являются правительство, банки или нотариальные бюро. Однако эти организации вызывают доверие не у всех граждан. Таким образом, было бы гораздо лучше, если бы для получения подписи на электронном документе не требовалась авторитетная доверительная организация. К счастью, здесь может помочь шифрование с открытым ключом. Предположим, что алгоритмы шифрования и дешифрации с открытым ключом, помимо обычного свойства Р(Е(Р)) = Р, обладают свойством Е(б(Р)) = Р.
Таким свойством, например, обладает алгоритм КБА, поэтому такое предположение не является голословным. В этом случае Алиса может послать Бобу подписанное открытое сообщение Р, переслав ему Ев(Р (Р)). Обратите внимание на то, что Алиса знает свай собственный (закрытый) ключ дешифрации 1)м так же как и открытый ключ Боба Е, так что сформировать такое сообщение ей по силам. Получив эта сообщение, Боб расшифровывает его как обычно, используя свой закрытый ключ 1)в и получая в результате Р„(Р), как показано на рис.
8.16. Он сохраняет этот зашифрованный текст в надежном месте, после чего расшифровывает его открытым ключом шифрования Алисы Е„, получая открытый текст. Линия связи Компьютер Боба Компьютер Алисы ыл(Р) Бв (ыл(Р)) Ол(Р) Рис. 8.1В. Цифровая подпись, полученная при помощи шифрования с открытым ключом Чтобы понять, как работает цифровая подпись в данном случае, предположим, что Алиса впоследствии отрицает, что посылала Бобу сообщение Р. Когда дело доходит до суда, Боб предъявляет суду Р и Р„(Р). Судья легко может убелиться, что у Боба есть действительное сообщение, зашифрованное ключом Ою просто применив к нему ключ Е .
Боб не знает закрытого ключа Алисы, следовательно, получить зашифрованное этим ключом сообщение он мог только от Алисы. Сидя в тюрьме за лжесвидетельство и мошенничество, Алиса сможет заняться разработкой новых интересных алгоритмов с открытым ключом. Хотя схема использования шифрования с открытым ключом довольно элегантна, она обладает серьезными недостатками, связанными, правда, скорее не с самим алгоритмом, а со средой, в которой ему приходится работать.
Во-первых, Боб может доказать, что это сообщение было послано Алисой, только пока 666 Глава 8. Безопасность в сетях ключ П, остается секретным. Если Алиса раскроет свой секретный ключ, этот аргумент перестанет быть убедительным, так как послать сообщение мог кто утодно, включая самого Боба. Проблема может возникнуть, если Боб, например, является биржевым брокером Алисы. Алиса заказывает Бобу купить некоторое количество акций. Сразу после этого цена акций резко падает. Чтобы отречься от своего сооГ>щения, посланного Бобу, Алиса заявляет в полицию, что ее дом был обворован, а компьютер вместе с секретным ключом украден. В зависим!жги от законов ес страны или штата она может быть признана или не признана ответственной псрсд законом, особенно если она заявляет, что обнаружила, что се квартира взломана, только через несколько часов после возвращения с работы.
Другая проблема данной схемы цифровой подписи возникает в случае, если Алиса решит сменить свой ключ. Подобное действие абсолн!тно законно, более того, рекомендуется периодически менять кл!оч, чтобы гарантировать его высокую надежность. В этом случае, если дело дойдет до судебного разбирательства, судья попытается применить к подписи В!(Р) и!екуп1и!1 ключ Е, и обнаружит, что в результате не получается сообщение Р. При этом Боб будет выглядеть довольно глупо.
В принципе, для цифровых подписей можно использовать любой алгоритм с открытым ключом. Алгоритм йБА, фактически, стал промышленным стандартом. Он применяется во многих программах, предназначенных для обеспечения безопасности. Однако в 1991 г. Национальный институт стандартов и технологий США Х15Т (11ат!опа1 1пзг1гше о( Бгапг1аг!)з апг1 ТсгЬпо1ойу) пргг!гпокпл попользовать для нового стандарта цифровой подписи ПББ (Ь!й!!! ! гмйо„!оге Бгапоагд) Вариант алгоритма с открь!тым клн!'!Ом Эль.1амаля, ог!;Оаы!!сый '!г ! ь трудности разложения больших чисел на множители, а на сложности в: шиглсния дискретных алгоритмов.