Атаки против собственников данных, возникающие вследствие конструктивных недостатков программного обеспечения. Некоторые конструктивные особенности программного обеспечения могут создавать существенные и неприятные эффекты для собственников данных в системе. Если производители реализовали операционную систему, которая позволяет многим пользователям запускать программы на одной и той же карте, это приводит к появлению ряда новых проблем безопасности, таких как разрушительная деятельность операционной системы, преднамеренно ограниченный генератор случайных чисел или конфликт различных приложений, запущенных на одной смарт-карте.
Все это не означает, что смарт-карты нельзя рассматривать как защищенные устройства. Смарт-карты, которые обращаются в кредитной финансовой системе, например, очень отличаются от карт, которые используются в системе денежных вкладов (stored value system). Системы смарт-карт, которые обеспечивают идентификацию и возможность проверки, также безопасны. Смарт-карты полезны, но их использование сопряжено с известным риском. Безопасная система смарт-карт должна уметь распознавать вышеописанные атаки; она должна быть сконструирована таким образом, чтобы они не могли на нее повлиять. В лучших системах не имеет значения, например, что пользователь может взломать карту. Это очень «по дзенски»: работа не против возможного нападающего, а на основе модели сохранения безопасности.
Глава 15
Сертификаты и удостоверения
Понятия сертификата открытого ключа и инфраструктуры открытого ключа являются центральными для шифрования в современном Интернете. Прежде чем их рассматривать, однако, будет нелишне напомнить, что представляет собой цифровая подпись. Цифровая подпись является математической операцией над совокупностью битов, которую можно выполнить только с помощью определенного ключа. Ее подлинность может быть подтверждена с помощью другого, соответствующего первому, ключа. Допустим, ключ шифрования известен только Алисе. Следовательно, понятно, что только Алиса может выполнить операцию и таким образом «подписать» сочетание битов.
Проблема с описанной моделью заключается в следующем: предполагается, что ключ шифрования – это секрет, известный только Алисе. Путем проверки подписи мы можем действительно подтвердить только то, что сообщение подписано с помощью Алисиного ключа; мы не вправе ничего утверждать относительно того, подписала ли его сама Алиса. Мы не знаем, был ли ключ украден кем-либо еще. Мы не знаем ничего относительно намерений Алисы. Когда мы видим Алисину собственноручную подпись на бумаге, мы можем сделать некоторые утверждения относительно ее воли: она прочла и подписала документ, она поняла его содержание. Когда же документ подписан с помощью секретного ключа Алисы, мы даже не можем быть уверены, что она вообще видела его. «Цифровая подпись» – это название, которое настораживает, потому что это не есть подпись.