Секреты и ложь. Безопасность данных в цифровом мире
Шрифт:
На первый взгляд кажется, что жалобы ФБР обоснованы. Преступники используют криптографию, чтобы скрыть доказательства, которые по закону могут быть использованы против них в суде: они зашифровывают компьютерные файлы, они шифруют телефонные переговоры и радиосвязь. Но положительные стороны использования криптографии намного перевешивают негативные факторы, и прежде всего то, что криптография чаще применяется, чтобы остановить преступников, чем в помощь им. Рон Ривест однажды сравнил криптографию с перчатками. Это правда, производя перчатки, общество облегчает преступникам задачу скрыть свои отпечатки пальцев. Но никто никогда не предлагал объявить перчатки незаконными.
Существует множество названий для обозначения этой идеи. Первый термин, предложенный правительством,
41
Проект «Клиппер-чип» был объявлен администрацией президента США в 1994 году и должен был положить начало внедрению в США «Стандарта шифрования с депонированием ключа». Главный замысел проекта состоял в том, чтобы по решению суда предоставить правоохранительным органам беспрепятственный доступ к шифруемой с помощью «Клиппер-чипа» информации. Для этого в чипе используется алгоритм Skipjack с двумя ключами. Знание одного из ключей (мастер-ключа) достаточно для того, чтобы было возможно дешифровать любое сообщение, зашифрованное с помощью «Клиппер-чипа».
GAK-системы имеют «черный ход». Другими словами, они обеспечивают некую форму доступа к зашифрованным данным помимо нормального процесса дешифровки. В проекте «Клиппер-чип» предлагалось называть этот «черный ход» областью доступа правоохранительных органов (Law Enforcement Access Field, LEAF). (Первоначально она называлась областью использования органов охраны правопорядка, пока кто-то не указал на то, что это название неблагозвучно.)
«Черный ход» в GAK-системах предназначается для применения правительственными структурами (такими как полиция). Они работают различными способами: ранние GAK-системы оперировали с хранилищем закрытых ключей правительства США, более поздние самостоятельно определяют закрытые объекты. Другие системы используют программные агенты для «депонирования» или для восстановления ключей, что дает возможность узнать ключи частных зашифрованных сеансов связи или хранящихся файлов. Некоторые системы распределяют работу по восстановлению ключей между несколькими агентами. Имеются различные варианты, но все GAK-системы содержат два существенных элемента. Первый – механизм, внешний по отношению к первичной системе, посредством которого третья сторона может получить секретный доступ к открытому тексту, который был зашифрован. И второй – существование высокочувствительного метода секретного восстановления ключа (или коллекции ключей), который должен сохраняться в тайне в течение продолжительного времени. С точки зрения полиции, GAK-системы необходимы, чтобы предоставлять полиции своевременный доступ к открытому тексту, не сообщая об этом пользователям. Системы такого типа, по мнению администрации Клинтона и ФБР, решают проблему использования шифрования преступниками, делая доказательства их преступлений очевидными.
К несчастью, решение хуже самой проблемы. Восстановление данных производится с легкостью, поскольку это делается в высших интересах пользователя. Действия пользователей подобны автоматическому созданию резервной копии;
Способы осуществления GAK различны и достаточно сложны, поскольку он должен работать, несмотря на враждебность пользователей. Требования, предъявляемые ФБР к доступу, – скорость, секретность, полнота – вынуждают пользователей усиливать меры безопасности. Если я шифрую сообщение электронной почты, я должен доверять шифрованию – как на своей стороне, так и на стороне получателя. Наличие GAK означает, что я должен быть уверен в целой инфраструктуре, предназначенной для хранения ключей: шифрование, базы данных, полиция, народ. Цена построения такой инфраструктуры может быть огромной, в соответствии с уровнем возможного риска.
Этот риск неотделим от идеи использования GAK и не зависит от особенностей технологии. Все GAK-системы предполагают существование высокочувствительного и доступного ключа или коллекции ключей, которая должна сохраняться в секрете в течение продолжительного времени. Такие системы обязаны обеспечивать быстрый доступ к информации сотрудникам правоохранительных органов без ведома владельцев ключей. Эти основные требования делают задачу полного восстановления ключа трудной и дорогостоящей, возможно, слишком небезопасной и слишком дорогостоящей для многих приложений и многих пользователей.
Рассматривая различные варианты GAK, вы можете выбирать между более высокой ценой и более высоким риском. Хотя это может оказаться возможным – использовать отдельную GAK-систему относительно безопасным образом, для достижения этого результата пользователь заплатит неимоверную цену. С другой стороны, простые и недорогие GAK-системы могут создать угрозу для безопасности. Например, плохо реализованная система для восстановления ключей, обслуживаемая малоквалифицированным и низкооплачиваемым персоналом, с низким уровнем физической секретности и без надежного страхования, скорее всего, будет дешевле хорошо организованного центра. Но она также будет менее аккуратно обращаться с ключами.
Интересно, что безопасность и цена зависят также от конструкции системы. Например, представьте себе механизм, в котором сеансовые ключи отсылаются в центр по восстановлению, зашифрованные общедоступным открытым ключом, хранящимся в центре. Эта система относительно проста для конструирования и выполнения, но она является одной из худших с точки зрения безопасности. Все зависит от ключа системы восстановления, которым шифруются все остальные ключи. Если этот ключ взломан (или подделан), все ключи в системе могут быть взломаны. Конечно, некоторые коммерческие системы основываются на почти таком же механизме.
GAK-системы существенно менее безопасные, более дорогие и более сложные в эксплуатации, чем подобные им системы, не предусматривающие возможность восстановления ключей. Чтобы сделать их работающими, надо выдвинуть требование считать незаконными продукты, не включающие GAK. Более того, для этой схемы требуется построение безопасной инфраструктуры такого поразительного масштаба и сложности, создание которой превышает существующие сегодня возможности в этой области и может внести безусловно неприемлемый риск и дороговизну.
Безопасность баз данных – более сложная вещь, чем обычно думают. В простейшем случае все легко: Алиса имеет доступ к персональной базе данных, Боб не имеет. В более трудных случаях все сложнее – Алиса имеет доступ к части базы данных, относящейся к медицинскому страхованию, а Боб имеет доступ к персональной базе данных по зарплате, – но коммерческие базы данных управляются с этим достаточно успешно. Действительно сложная задача – обеспечить анонимность при работе с базой данных, позволяя людям использовать итоговую информацию, – удивительно трудна.