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

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

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

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

Все это не означает, что смарт-карты нельзя рассматривать как защищенные устройства. Смарт-карты, которые обращаются в кредитной финансовой системе, например, очень отличаются от карт, которые используются в системе денежных вкладов (stored value system). Системы смарт-карт, которые обеспечивают идентификацию и возможность проверки, также безопасны. Смарт-карты полезны, но их использование сопряжено с известным риском. Безопасная система смарт-карт должна уметь распознавать вышеописанные атаки; она должна быть сконструирована таким образом, чтобы они не могли на нее повлиять. В лучших системах не имеет значения, например, что пользователь может взломать карту. Это очень «по дзенски»: работа не против возможного нападающего, а на основе модели сохранения безопасности.

Глава 15

Сертификаты и удостоверения

Понятия сертификата открытого ключа и инфраструктуры открытого ключа являются центральными для шифрования в современном Интернете. Прежде чем их рассматривать, однако, будет нелишне напомнить, что представляет собой цифровая подпись. Цифровая подпись является математической операцией над совокупностью битов, которую можно выполнить только с помощью определенного ключа. Ее подлинность может быть подтверждена с помощью другого, соответствующего первому, ключа. Допустим, ключ шифрования известен только Алисе. Следовательно, понятно, что только Алиса может выполнить операцию и таким образом «подписать» сочетание битов.

Проблема с описанной моделью заключается в следующем: предполагается, что ключ шифрования – это секрет, известный только Алисе. Путем проверки подписи мы можем действительно подтвердить только то, что сообщение подписано с помощью Алисиного ключа; мы не вправе ничего утверждать относительно того, подписала ли его сама Алиса. Мы не знаем, был ли ключ украден кем-либо еще. Мы не знаем ничего относительно намерений Алисы. Когда мы видим Алисину собственноручную подпись на бумаге, мы можем сделать некоторые утверждения относительно ее воли: она прочла и подписала документ, она поняла его содержание. Когда же документ подписан с помощью секретного ключа Алисы, мы даже не можем быть уверены, что она вообще видела его. «Цифровая подпись» – это название, которое настораживает, потому что это не есть подпись.

Это будет важно в дальнейшем изложении темы этой главы. А пока что поговорим о доверенных третьих лицах.

Доверенные третьи лица

Специалисты по криптографии определяют доверенное третье лицо как персону, которой доверяют все участники протокола, помогающую придать протоколу завершенность и безопасность. Мой друг из NSA однажды заметил (определение, отличающееся замечательной ясностью): «Каждый, кто вас знает, может нарушить вашу секретность и не быть пойманным». Вполне достаточно, эти два определения в главном совпадают.

Помните различные протоколы доверенных третьих лиц из главы 7? Любая коммерция, исключая прямой бартер, тем или иным образом использует доверенных третьих лиц. Даже сделки с оплатой наличными: продавец верит, что правительство примет деньги, которые он получил от покупателя. Когда же сделки включают в себя более интересные финансовые инструменты – чеки, кредитные карты, дебетовые карты, командировочные удостоверения, – и продавец и покупатель полагаются на то, что банк или финансовая компания будут вести себя правильно. Предприниматель и клиент не обязательно доверяют друг другу, но доверенное третье лицо должно успешно посредничать между ними. Все заканчивается очень быстро, если компания кредитных карт начинает капризно отвергать карты некоторых владельцев.

Адвокаты играют роль доверенных третьих лиц в персональных делах, выполняя волю свих клиентов. Когда некто говорит своему похитителю: «Если вы убьете меня, то мой адвокат пошлет копии доказательств в ФБР, CNN и New York Times, он использует своего поверенного в качестве доверенного третьего лица. Адвокаты не думают шутить, профессия делает их превосходными доверенными лицами.

Судебная система в целом может рассматриваться как доверенное третье лицо, гарантирующее, что контракты законны и дела ведутся правильно. Рассмотрим такой протокол честного контракта: Алиса и Боб ведут переговоры и подписывают контракт. Если один из них почувствует, что другой не соблюдает контракт со своей стороны, он или она обратятся к доверенной третьей стороне – к судье. Судья выслушает доказательства с обеих сторон и затем свершит правосудие.

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

Современная жизнь полна примеров существования доверенной третьей стороны. Магазины, торгующие по накладным, неважно, реальные или в Сети, суть доверенные третьи лица. Также и аукционы. А каждый, кто покупает что-либо через службу доставки? Служба доставки – доверенное третье лицо. То же самое – почтовые переводы. Нотариально заверенный акт подтверждает подлинность личности людей, подписавших законные документы, и обеспечивает проверку доказательств в случае спора. ООН посылает «наблюдателей» в качестве доверенных лиц в те страны мира, где противоборствующие стороны не доверяют друг другу. В Сети появляется служба условного депонирования, действующая как доверенная третья сторона между продавцами и покупателями в случае сделок с привлечением крупных денежных сумм.

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