Секреты и ложь. Безопасность данных в цифровом мире

ОглавлениеДобавить в закладки К обложке

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

Те же браузеры могут выводить на экран предупреждения перед загрузкой апплетов Java. Пользователя спрашивают, доверяет ли он некоторому веб-серверу, с которого отправляется апплет. Пользователь не имеет представления о том, стоит ему доверять ему или нет. Или не беспокоится об этом. Если некто, бесцельно блуждающий по Интернету, щелкает на кнопке, обещающей вывести на экран пляшущих поросят, и получает предупреждение о возможных опасностях апплета, он сделает выбор в пользу поросят, а не стабильной безопасности своего компьютера. Если его попытаются образумить предупреждением вроде: «Апплет DANCING PIGS может содержать вредоносный код, способный вызвать непоправимые повреждения вашего компьютера, похитить все ваши сбережения и лишить вас способности к деторождению», он щелкнет ОК, даже не прочитав его. Через тридцать секунд он и не вспомнит, было ли подобное предупреждение.

Автоматизм действий пользователя

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

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

Это то, что я называю автоматизмом действий пользователя (human-computer transference). Алиса знает, чего она хочет, – подписать документ. Она должна иметь определенные гарантии того, что компьютер сделает именно то, что ей нужно. Однако обеспечить безопасность не так просто.

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

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


Логин
Пароль
Запомнить меня