Текст книги "Секреты и ложь. Безопасность данных в цифровом мире"
Автор книги: Брюс Шнайер
Жанры:
Интернет
,сообщить о нарушении
Текущая страница: 21 (всего у книги 34 страниц)
Некоторые центры сертификации, учитывая тот факт, что они не властны Над содержимым сертификата, выделили структуру, называемую бюро регистрации (Registration Authority, RA), которая должна отвечать за содержание. Идея состоит в том, что RA ответственен за проверку информации, находящейся в сертификатах, а СА отвечает за их выдачу.
Модель RA+CA, безусловно, менее безопасна, чем система, при которой СА находится в составе полномочного органа (то есть RA). Модель RA+CA позволяет некоторому объекту (СА), который не является полномочным относительно содержания, подделать сертификат с соответствующим содержанием. Конечно, сертифицирующий орган подписывает контракт, в котором обещает так не делать, но это не исключает подобную возможность. Между тем, поскольку безопасность всей модели зависит от безопасности обеих ее частей и взаимодействия между ними (они должны каким-либо способом взаимодействовать), RA+CA менее безопасна, чем каждая из частей, безотносительно того, насколько силен СА и насколько хорош контракт, который с ним подписан. Конечно, модель, в которой СА находится в составе органа-распорядителя (не со стороны продавца), препятствует некоторым способам ведения бизнеса продавцами в инфраструктуре PKI.
Другую проблему представляет защита закрытого ключа. Вспомним: чтобы вся система цифровых подписей работала, вы должны быть уверены, что ваш закрытый ключ известен только вам. Отлично, но как защитить его? Можно быть почти уверенным, что у вас нет безопасной вычислительной системы, с контролем физического доступа, экранированием TEMPEST, «пространством» сетевой безопасности и другими средствами защиты; вы храните свой закрытый ключ на обычном компьютере. Таким образом, он является объектом для вирусов и иных разрушительных программ. Даже если ваш закрытый ключ в безопасности на вашем компьютере, находится ли этот компьютер в закрытой комнате, снабженной системой видеонаблюдения, уверены ли вы, что никто, кроме вас, никогда не воспользуется им? Если он защищен паролем, то насколько трудно «вычислить» этот пароль? Если ваш ключ хранится на смарт-карте, насколько она устойчива к атакам? Если он содержится на действительно устойчивом к атакам устройстве, то не может ли инфицированный компьютер найти способ «убедить» это заслуживающее доверия устройство подписать то, что вы не хотели бы подписывать?
Здесь дело преимущественно касается термина безотказность (nonrepudation). Подобно «доверенному» объекту, этот термин взят из академической литературы по криптографии. Здесь он используется в специфическом значении, описывая алгоритм создания цифровой подписи, который невозможно разрушить, так что никто не может подделать вашу подпись. Продавцы PKI замыкаются на этом термине и используют его в юридическом смысле, лоббируя законы, согласно которым, если кто-то использует свой закрытый ключ, то он в любом случае не может отказаться от своей подписи. Другими словами, в соответствии с некоторыми законами об использовании цифровой подписи (например, законами штатов Юта и Вашингтон), если ключ вашей подписи сертифицирован правомочным СА, вы отвечаете за все, что с помощью этого ключа делается. Им нет дела до того, кто сидел за клавиатурой компьютера или какой вирус создал эту подпись: вы ответственны по закону.
Считается, что работает следующий механизм: если вы подозреваете, что ваш ключ ненадежен, вы «отправляете» его в CRL. Все, что подписано этим ключом в дальнейшем, автоматически считается недействительным. Это кажется невероятным, но такая система изначально порочна. Боб хочет знать, что ключ Алисы вне подозрений, прежде чем примет ее подпись. Злоумышленник не собирается объявлять о том, что он взломал Алисин ключ. Таким образом, Алиса может понять, что ее ключ взломан, только когда она получит от Боба сообщение, демонстрирующее доказательства подделки ее подписи. В большинстве случаев это может произойти, только если Боб примет ее подпись.
Контраст с этим являет собой практика защиты кредитных карт. Согласно правилам, регулирующим заказы по почте и по телефону, если вы возражаете против какого-либо пункта в счете вашей кредитной карты, вы имеете право отвергнуть его – сказать, что вы не покупали этого, – и продавец должен доказать, что вы на самом деле это купили.
В компьютере существуют различные уязвимые места, которые должны проверяться. Проверка сертификата не имеет отношения к секретному ключу, он подтверждает только открытый ключ. Но чтобы проверить сертификат, нам необходим один или несколько «корневых» открытых ключей: открытые ключи сертифицирующих органов. Если злоумышленник сумеет прибавить свой открытый ключ к этому списку, он может выпустить затем свои собственные сертификаты, и обращаться с ними будут точно так же, как и с законными. Они могут быть даже более чем законными в любом другом отношении, за исключением того, что они содержат открытый ключ злоумышленника вместо корректного открытого ключа.
Некоторые продавцы PKI объявляют, что их ключи находятся в корневых сертификатах и вполне безопасны. Такие сертификаты подписаны ими самими и не предполагают следующего уровня безопасности. Единственным решением будет проведение всех сертификационных проверок на компьютерной системе, защищенной как от вторжения враждебного кода, так и от физического вмешательства.
И наконец, как бюро сертификации идентифицируют владельца сертификата? Будет ли сертификат использоваться только как идентификатор или для другой специфической авторизации, но СА должен идентифицировать претендента перед вручением ему сертификата.
Некоторые кредитные организации подумывают о том, чтобы заняться сертификационным бизнесом. Помимо всего прочего они имеют обширную базу, содержащую данные о множестве людей, так что логично предположить, что они способны с легкостью установить подлинность личности. Если они хотят подтверждать подлинность по сети, они в состоянии сделать это, обеспечив совместный с субъектом доступ к секретной информации и безопасный канал, по которому конфиденциальную информацию можно передавать. SSL обеспечивает безопасный канал.
Помешать подобным кредитным организациям выполнить свою роль может то, что у них не получится сделать совместный доступ секретным. Другими словами, не существует безопасного идентификатора, который мог бы использоваться для запуска всего процесса, потому что такие организации участвуют в продаже имеющейся у них информации другим людям. Хуже того, поскольку кредитные бюро делают такое «доброе» дело, как сбор и продажа информации о людях, другие, кто предположительно имеет информацию о субъекте, возможно, подвергаются сильному давлению, чтобы они помогли найти те секретные данные о субъекте, которые еще не известны этому кредитному бюро.
Между тем, каким-либо образом идентифицировав претендента, как СА проверит, что претендент действительно контролировал закрытый ключ, соответствующий открытому ключу, подтвержденному сертификатом? Некоторые сертифицирующие органы даже не рассматривают эту часть процесса. Другие могут требовать, чтобы претендент подписал некоторый документ тут же на месте, в присутствии СА.
Сертификаты не напоминают некий магический эликсир безопасности, капля которого, добавленная к вашей системе, сделает ее безопасной. Сертификаты должны использоваться правильно, если вы хотите безопасности. Осуществляется ли эта практика с соблюдением твердых гарантий безвредности или это только ритуалы или имитация поведения кого-то еще? Многие случаи из подобной практики и даже некоторые стандарты при ближайшем рассмотрении оказывались скопированными с таких образцов, которые с самого начала не содержали реального ответа.
Как вычисляется время жизни ключа? Почему продавцы используют один год – потому, что это общепринято? Ключ имеет криптографическое время жизни. Он также имеет время жизни до воровства, являющееся функцией от уязвимости подсистемы, в которой он хранится, состояния ее физического и сетевого окружения, привлекательности ключа для взломщика и т. д. Исходя из этого можно вычислить вероятность потери ключа как функцию времени и эксплуатации. Делают ли продавцы эти вычисления? Какой порог вероятности выбирается, чтобы считать ключ недействительным?
Поддерживает ли продавец аннулирование ключа и сертификата? Списки отозванных сертификатов встроены в некоторые сертификационные стандарты, но многие реализации избежали этого. Но если CRL не используются, то как осуществляется упразднение? Если отмена действия поддерживается, как предотвратить использование ключа, когда стало известно, что он отозван? Может ли случиться так, что он будет отозван задним числом? Причем так, что владелец сертификата может отрицать, что именно он сделал эту подпись некоторое время назад? Если так, датируются ли подписи таким образом, чтобы каждый мог отличить действительные подписи от недействительных? Осуществляется ли контроль даты службами безопасности?
Какую длину имеют сгенерированные открытые ключи и почему выбрана эта длина? Поддерживает ли продавец более короткие и слабые ключи RSA только потому, что они быстрее, или более длинные ключи, поскольку кто-то где-то ему сказал, что они безопасны?
Требует ли правильное использование сертификатов некоторых действий от пользователя? Выполняет ли он эти действия? Например, когда вы устанавливаете соединение SSL с помощью своего браузера, присутствует видимая индикация, что работает протокол SSL и связь зашифрована. Но с кем вы говорите по безопасному каналу? До тех пор пока вы не прочтете сертификат, полученный вами, вы не знаете.
PKI в Интернете
Большинство людей взаимодействуют с PKI единственно по поводу использования SSL. Технология SSL обеспечивает безопасность транзакций во Всемирной паутине, и некоторые продавцы PKI указывают на это, рекомендуя эту технологию для электронной коммерции. Это фальшивый аргумент; хотя никто не призывает людей, торгующих через Интернет, не использовать SSL.
SSL позволяет зашифровать операции с кредитными картами в Интернете, но не является источником безопасности для участников транзакции. Безопасность основывается на процедурах, выполняемых компанией кредитных карт; потребителю должно быть предоставлено право отвергнуть любой пункт, вызывающий сомнение, прежде чем он оплатит счет. SSL защищает пользователя от прослушивания, но не может защитить его ни от взломщика, если тот проникнет на веб-сайт и украдет файл, содержащий номера кредитных карт, ни от жуликоватого сотрудника, если тот следит за номерами кредитных карт в компании.
Предполагалось, что PKI будут обеспечивать идентификацию, но они не делают даже этого.
Пример первый: компания F-Secure (более формальное название Data Fellows) продает программное обеспечение через свой веб-сайт, находящийся по адресу www datafellows com. Если, намереваясь купить какой-либо продукт, вы щелкните в соответствующем месте, то будете перенаправлены на www netsales net, с которым устанавливается соединение по протоколу SSL. Владельцем сертификата SSL является «NetSales, Inc., Software Review LLC» в Канзасе. Главные представительства F-Secure расположены в Хельсинки и в Сан-Хосе. Согласно любым правилам PKI, никто не имеет права делать бизнес через этот сайт. Полученный сертификат принадлежит не той компании, которая на самом деле торгует программным обеспечением. Это в точности то, что мы называли атакой посредника, и это именно то, что PKI должны предотвращать.
Пример второй: я посетил www palm com, чтобы купить кое-что для моего Palm-Pilot. Когда я собирался проверить соединение, то был перенаправлен на https://palmorder modusmedia com/asp/store asp. Сертификат зарегистрирован на имя Modus Media International; налицо скандальная попытка обмануть пользователей, которую я обнаружил, поскольку внимательно проверяю сертификаты SSL. Ну уж нет!
Кто-нибудь еще поднимет тревогу в таких случаях? Кто-нибудь не станет покупать продукт через Интернет только потому, что имя на сертификате не совпадает с именем на сайте? Кто-то, кроме меня, хоть что-нибудь заметит?
Сомневаюсь. Правда заключается в том, что сертификат, выданный VerySign, дает возможность осуществить атаку посредника, но никому нет до этого дела. Так или иначе я сделал покупку, поскольку безопасность обеспечивается правилами использования кредитных карт, а не протоколом SSL. Моя максимальная ответственность за украденную кредитную карту измеряется суммой 50 долларов, и я могу отвергнуть любую сделку, в которой нечестный торговец попытается обмануть меня. Так как все это используется, вместе с тем, что средний пользователь не беспокоится о проверке подлинности сертификатов, и не существует механизма аннулирования, то SSL – это просто (очень медленный) метод Диффи-Хеллмана обмена ключами. Цифровые сертификаты не обеспечивают реальной безопасности электронной коммерции; это полный обман.
Глава 16
Уловки безопасности
Эта глава представляет собой коллекцию различных трюков и технических приемов, которые реально больше в безопасности не используются.
Правительственный доступ к ключам
«Отлично, дела обстоят следующим образом: мы – правительство, и наше дело предупреждать преступность. Это нелегко, криминальным элементам свойственно идти окольными путями. Эти преступники, страшные преступники: наркодельцы, террористы, торговцы детской порнографией, фальшивомонетчики, – используют криптографию, чтобы защитить свои коммуникации. Мы беспокоимся, что наши перехваты, осуществляемые на законных основаниях, больше не эффективны; все эти страшные преступники скрываются. Мы хотим иметь возможность дешифровать сообщения каждого; может случиться, что он окажется криминальным элементом. Мы желаем, чтобы все вы сделали копии ваших ключей шифрования и послали их в полицию (или лицу, которому полиция доверяет), только на случай, если вы окажетесь преступником. И конечно, мы не доверим вам сделать это самостоятельно – поскольку мы собираемся выполнить это автоматически с помощью продуктов для шифрования, которые вы покупаете».
Надо признать, это недоброе описание позиции ФБР по вопросу о секретных ключах, но зато точное. С 1993 года администрация Клинтона и ФБР пытались вынудить американскую общественность принять идею, что нужно дать правительственным организациям доступ к частной информации. Они пытались привлечь корпорации к тому, чтобы они предусматривали эту возможность в своих продуктах, убедить пользователей, что эти меры предпринимаются в их высших интересах, и когда встретили сопротивление в Соединенных Штатах, продолжали оказывать давление на другие страны, вынуждая их принять такую же политику. Они даже угрожали объявить криптографию незаконной. Это очень спорный вопрос.
На первый взгляд кажется, что жалобы ФБР обоснованы. Преступники используют криптографию, чтобы скрыть доказательства, которые по закону могут быть использованы против них в суде: они зашифровывают компьютерные файлы, они шифруют телефонные переговоры и радиосвязь. Но положительные стороны использования криптографии намного перевешивают негативные факторы, и прежде всего то, что криптография чаще применяется, чтобы остановить преступников, чем в помощь им. Рон Ривест однажды сравнил криптографию с перчатками. Это правда, производя перчатки, общество облегчает преступникам задачу скрыть свои отпечатки пальцев. Но никто никогда не предлагал объявить перчатки незаконными.
Существует множество названий для обозначения этой идеи. Первый термин, предложенный правительством, был «депонирование ключей» («key escrow»), так как мастер-ключ в «Клиппер-чипе» (Clipper chip)[41]41
Проект «Клиппер-чип» был объявлен администрацией президента США в 1994 году и должен был положить начало внедрению в США «Стандарта шифрования с депонированием ключа». Главный замысел проекта состоял в том, чтобы по решению суда предоставить правоохранительным органам беспрепятственный доступ к шифруемой с помощью «Клиппер-чипа» информации. Для этого в чипе используется алгоритм Skipjack с двумя ключами. Знание одного из ключей (мастер-ключа) достаточно для того, чтобы было возможно дешифровать любое сообщение, зашифрованное с помощью «Клиппер-чипа».
[Закрыть] предполагал, что сеансовый ключ будет «сдаваться на хранение» (hold «in escrow») и в дальнейшем передаваться органам охраны правопорядка. Если люди переставали покупать систему шифрования «о депонированием», название продукта изменяли, чтобы снова сделать его приемлемым. Сегодня используются термины «восстановление ключей» («key recovery»), «шифрование с участием доверенной третьей стороны» («trusted thirpartyencryption»), «исключительный доступ» («exceptional access»), «восстановле ние сообщений» («message recovery») и «восстановление данных» («data recovery»). Мне нравится GAK (government access to keys, правительственный доступ к ключам).
GAK-системы имеют «черный ход». Другими словами, они обеспечивают некую форму доступа к зашифрованным данным помимо нормального процесса дешифровки. В проекте «Клиппер-чип» предлагалось называть этот «черный ход» областью доступа правоохранительных органов (Law Enforcement Access Field, LEAF). (Первоначально она называлась областью использования органов охраны правопорядка, пока кто-то не указал на то, что это название неблагозвучно.)
«Черный ход» в GAK-системах предназначается для применения правительственными структурами (такими как полиция). Они работают различными способами: ранние GAK-системы оперировали с хранилищем закрытых ключей правительства США, более поздние самостоятельно определяют закрытые объекты. Другие системы используют программные агенты для «депонирования» или для восстановления ключей, что дает возможность узнать ключи частных зашифрованных сеансов связи или хранящихся файлов. Некоторые системы распределяют работу по восстановлению ключей между несколькими агентами. Имеются различные варианты, но все GAK-системы содержат два существенных элемента. Первый – механизм, внешний по отношению к первичной системе, посредством которого третья сторона может получить секретный доступ к открытому тексту, который был зашифрован. И второй – существование высокочувствительного метода секретного восстановления ключа (или коллекции ключей), который должен сохраняться в тайне в течение продолжительного времени. С точки зрения полиции, GAK-системы необходимы, чтобы предоставлять полиции своевременный доступ к открытому тексту, не сообщая об этом пользователям. Системы такого типа, по мнению администрации Клинтона и ФБР, решают проблему использования шифрования преступниками, делая доказательства их преступлений очевидными.
К несчастью, решение хуже самой проблемы. Восстановление данных производится с легкостью, поскольку это делается в высших интересах пользователя. Действия пользователей подобны автоматическому созданию резервной копии; они не должны помнить, что сделали копию. (Подождите, пока я не сделаю копию этого манускрипта.) Но GAK также связан с коммуникациями – телефонными разговорами и почтой, – которые не имеют отношения к копированию данных. Хранимые данные имеют огромную ценность: если вы теряете их, то нет способа их восстановить. Данные, передаваемые при соединении, не имеют ценности: если вы потеряли их, вы можете повторить передачу.
Способы осуществления GAK различны и достаточно сложны, поскольку он должен работать, несмотря на враждебность пользователей. Требования, предъявляемые ФБР к доступу, – скорость, секретность, полнота – вынуждают пользователей усиливать меры безопасности. Если я шифрую сообщение электронной почты, я должен доверять шифрованию – как на своей стороне, так и на стороне получателя. Наличие GAK означает, что я должен быть уверен в целой инфраструктуре, предназначенной для хранения ключей: шифрование, базы данных, полиция, народ. Цена построения такой инфраструктуры может быть огромной, в соответствии с уровнем возможного риска.
Этот риск неотделим от идеи использования GAK и не зависит от особенностей технологии. Все GAK-системы предполагают существование высокочувствительного и доступного ключа или коллекции ключей, которая должна сохраняться в секрете в течение продолжительного времени. Такие системы обязаны обеспечивать быстрый доступ к информации сотрудникам правоохранительных органов без ведома владельцев ключей. Эти основные требования делают задачу полного восстановления ключа трудной и дорогостоящей, возможно, слишком небезопасной и слишком дорогостоящей для многих приложений и многих пользователей.
Рассматривая различные варианты GAK, вы можете выбирать между более высокой ценой и более высоким риском. Хотя это может оказаться возможным – использовать отдельную GAK-систему относительно безопасным образом, для достижения этого результата пользователь заплатит неимоверную цену. С другой стороны, простые и недорогие GAK-системы могут создать угрозу для безопасности. Например, плохо реализованная система для восстановления ключей, обслуживаемая малоквалифицированным и низкооплачиваемым персоналом, с низким уровнем физической секретности и без надежного страхования, скорее всего, будет дешевле хорошо организованного центра. Но она также будет менее аккуратно обращаться с ключами.
Интересно, что безопасность и цена зависят также от конструкции системы. Например, представьте себе механизм, в котором сеансовые ключи отсылаются в центр по восстановлению, зашифрованные общедоступным открытым ключом, хранящимся в центре. Эта система относительно проста для конструирования и выполнения, но она является одной из худших с точки зрения безопасности. Все зависит от ключа системы восстановления, которым шифруются все остальные ключи. Если этот ключ взломан (или подделан), все ключи в системе могут быть взломаны. Конечно, некоторые коммерческие системы основываются на почти таком же механизме.
GAK-системы существенно менее безопасные, более дорогие и более сложные в эксплуатации, чем подобные им системы, не предусматривающие возможность восстановления ключей. Чтобы сделать их работающими, надо выдвинуть требование считать незаконными продукты, не включающие GAK. Более того, для этой схемы требуется построение безопасной инфраструктуры такого поразительного масштаба и сложности, создание которой превышает существующие сегодня возможности в этой области и может внести безусловно неприемлемый риск и дороговизну.
Безопасность баз данных
Безопасность баз данных – более сложная вещь, чем обычно думают. В простейшем случае все легко: Алиса имеет доступ к персональной базе данных, Боб не имеет. В более трудных случаях все сложнее – Алиса имеет доступ к части базы данных, относящейся к медицинскому страхованию, а Боб имеет доступ к персональной базе данных по зарплате, – но коммерческие базы данных управляются с этим достаточно успешно. Действительно сложная задача – обеспечить анонимность при работе с базой данных, позволяя людям использовать итоговую информацию, – удивительно трудна.
Первый трудный случай. База данных может быть настроена таким образом, чтобы определенные пользователи могли видеть только определенные поля. Всем пользователям должно быть разрешено видеть ряд полей общего доступа (имя служащего, номер служащего), но только некоторым пользователям разрешается видеть специальные поля (информация о медицинском страховании, зарплата). Это все обычные проблемы компьютерной безопасности, разрешаемые с помощью протоколов идентификации и списков контроля доступа.
Намного более сложно иметь дело с ситуацией, когда у Алисы есть право делать запросы и смотреть статистические данные, но нет права на просмотр информации по каждому отдельному случаю. Это одна из проблем «вывода»; Алиса может вывести информацию об отдельных случаях, но делая запросы относительно групп.
Пример: Алиса запрашивает у базы данных итоговую информацию по определенным группам. Если она сможет получить ответ на запрос такого сорта – сообщить обо всех наркоманках, в возрасте от 35 до 45 лет, у которых один из родителей диабетик, имеющих определенный почтовый адрес, – скорее всего, она получит возможность выделить отдельные случаи.
Возможное решение этой проблемы – вычищать данные, прежде чем они попадут в чьи-нибудь руки. Данные о переписи населения США 1960 года, например, засекречены подобным образом. Для статистического анализа можно получить только одну запись на тысячу, и в этих записях удалены поля, содержащие имена, адреса и другая важная информация. Бюро переписи также применяет ряд других трюков: данные, имеющие экстремальное значение, подавляются, в систему добавляется шум. Эти методы защиты сложны, и, несмотря на это, достаточно тонкие атаки все же могут быть проведены. Если вы хотите получить сведения об одной богатой семье, живущей по соседству, может оказаться возможным вывести эти данные, если вы сделаете некоторые разумные предположения.
Другое допустимое решение – наложить ограничение на типы запросов, которые пользователь может делать к базе данных. Это также трудно сделать правильно. В одной известной исследовательской работе автор, вычисляя жалованье своего босса, основывался на вполне законных запросах к базе данных переписи 1970 года, несмотря на контроль, введенный специально для того, чтобы предупреждать подобные вещи. Информационная система Национального здравоохранения Новой Зеландии пыталась разрушить подобные виды атак, не выдавая информацию по группам, состоящим менее чем из 6 человек.
Атаки все равно остаются возможными. Алиса собирается узнать виды разрешенных запросов, и лучшее, что она может сделать, – сформировать некий математический подход для вывода нужной ей информации из информации, к которой она имеет доступ. И подобные вещи усугубляются, если Алисе разрешено добавлять данные в базу и удалять их. Если она хочет получить информацию относительно отдельного человека, она могла бы вставить пару сотен записей в базу и затем сделать общий запрос по людям, включая тех, которых она добавила, плюс ее цель. Так как ей известны все данные, которые она добавила, она может «вычислить» данные того, кто ей нужен. Целый ряд атак основывается на означенной идее.
В этой области проводились активные исследования в 80-х годах, но сейчас их меньше. (Новые правила конфиденциальности медицинской информации могут привести к их возрождению.) Хотя проблемы так и не решены.
Стеганография
Стеганография[42]42
Стеганография в переводе с греческого – тайнопись. – Примеч. перев.
[Закрыть] – это наука скрывать сообщения внутри сообщений. Геродот рассказывает о практике древних греков, когда секретное сообщение записывали с помощью татуировки, нанесенной на бритую голову посланца, а потом он снова отращивал волосы, перед тем как переправить это сообщение через вражескую территорию. (Длительность этой связи измерялась месяцами.) Использование невидимых чернил – более современная технология. Микрофотоснимки были изобретены немцами во время Первой мировой войны и оставались в моде в течение многих лет. Шпионы делали негативное изображение достаточно маленьким, чтобы можно было вырезать его и поместить между строчек книги. Шпион мог пронести такую книгу везде, не опасаясь, что кто-либо обнаружит микрофотографии, скрытые на одной из ее многочисленных страниц.
В компьютерном мире стеганография используется для скрытия секретных сообщений в графике, картинках, движущихся изображениях или в звуке. Отправитель скрывает сообщение, используя наименьшие значащие биты[43]43
Наиболее распространенным, но наименее стойким является метод замены наименьших значащих битов (LSB-метод). Он подстраивается под погрешность дискретизации, которая всегда существует в оцифрованных изображениях или аудиофайлах и видеофайлах. Модификация младших битов в большинстве случаев не вызывает значительной трансформации изображения и не обнаруживается визуально. – Примеч. перев.
[Закрыть] файла одного из этих типов – качество слегка ухудшается, но если вы сделали все правильно, это с трудом можно заметить – получатель на другом конце извлекает его. Некоторые коммерческие и свободно распространяемые программы предлагают стеганографию либо отдельно, либо в составе целого пакета средств обеспечения безопасности связи.
Стеганография обеспечивает степень секретности более высокую, чем криптография. Если Алиса захочет послать Бобу секретное сообщение, она может использовать одну из популярных программ шифрования для электронной почты. Однако заинтересованное лицо может перехватить сообщение, и хотя оно не сумеет прочитать его, но будет знать о самом факте отправки сообщения. Стеганография позволяет Алисе сообщаться с Бобом секретно; она может скрыть свое письмо в GIF-файле, содержащем изображение пары жирафов. Перехватчица не поймет, что Алиса послала Бобу секретное сообщение. Для обеспечения еще более надежной защиты Алиса может зашифровать сообщение, прежде чем скрыть его.
Чем дальше, тем лучше. Но в действительности системы работают не так. Наша перехватчица не глупа; как только она увидит картинку с жирафами, у нее могут возникнуть подозрения. Почему бы это Алисе посылать Бобу картинку с двумя жирафами? Боб коллекционирует жирафов? Или он художник-график? Посылали ли Алиса и Боб одно и то же изображение жирафов друг другу в течение последних недель? Упоминали ли об этой картинке в другой корреспонденции?
Самого по себе применения стеганографии недостаточно. Алиса и Боб должны скрыть факт, что они передавали что-либо, кроме безвредных фотографий. Это будет работать только в том случае, если стеганография станет использовать существующие образцы связи (communications patterns). Я в жизни не посылал и не получал GIF-изображений. Если кто-то неожиданно пошлет мне одно, это может навести дотошного исследователя на мысль, что в нем скрыто стеганографическое сообщение. Если Алиса и Боб регулярно обмениваются подобными файлами, перехватчик не сможет узнать, какое сообщение содержит в себе – если какое-либо содержит – скрытую информацию. Если Алиса и Боб изменят свои образцы связи для скрытых сообщений, система перестанет работать. Перехватчица их «вычислит».
Это важно. Стеганографию иногда рекомендуют использовать для секретной связи при репрессивных режимах, когда простой факт посылки зашифрованного сообщения может рассматриваться как подрывная деятельность. Это плохой совет. Модель, в которой постоянно присутствует угроза, предполагает, что вы под подозрением и должны выглядеть невинным в случае проверки. Это трудно. Вы можете применить программу стеганографии, которая доступна и перехватчице ваших сообщений. Она будет иметь копию этой программы. Она будет настороже, предвидя возможность появления стеганографических сообщений. Не используйте простое изображение, которое было в программе, когда вы установили ее: перехватчица быстро распознает его. Не используйте одно и то же изображение снова и снова: перехватчица увидит различия, указывающие на то, что это скрытое сообщение. Не используйте картинки, загруженные из Сети: перехватчица легко может сравнить картинку, которую вы послали, с исходной, которую вы загрузили. (Вы можете предположить, что она следит за загрузкой или осуществит поиск в Сети, чтобы найти такое же изображение.) И лучше, если вы придумаете правдоподобную историю о том, почему вы «гоняете» жирафов туда и обратно. И эта история должна быть придумана до того, как вы начнете посылать стеганографические сообщения, или вы ничего реально не выиграете.
Программы стеганографии существуют, чтобы скрывать файлы на вашем жестком диске. Это может работать, но вам по-прежнему нужна жизнеспособная история. Таким образом, есть определенные достижения по сравнению с простым шифрованием – по крайней мере, в свободных странах вы сможете доказать, что полиция не имеет реальных оснований для обвинения, – но вы должны тщательно все обдумать.