ПРИМЕНЕНИЕ Мы описали несколько применений ЦП. Некоторые из них уже используются, но большинство в стадии планирования и проверки. При обсуждении различных применений криптографии с открытым ключом мы полагали, что все открытые числа заверялись или подписывались некоторым доверенным лицом. МККТТ принял стандарт Х.509, озаглавленный "Справочник - аутентификация", который определяет иерархию доверенных объектов, осуществляющих сертификацию [9]. Alcatel STK реализовал систему на основе этого стандарта [10]. Далее в статье предполагаем, что существует СС, поэтому открытые числа не могут быть подделаны и всегда правильно идентифицируются. Управление ключами Обычные алгоритмы шифрования, такие как DES, обычно используются для защиты передаваемой или хранимой инофрмации. Это электронный аналог конверта, используемого для защиты содержимого письма в почтовой системе. Для совместной работы устройства шифрования должны разделять общий ключ. Распределение секретных криптографических ключей является проблемой управления ключами [11]. До недавнего времени ключи распространялись при помощи курьеров. Слабым местом в этих системах является ручное распространение ключей людьми. Известно, что при этом лучшее нападение - это "покупка ключа". Кроме того, стоимость курьерского распространения ключей превышает стоимость жизненного цикла аппаратуры шифрования данных. Поскольку функции с открытым ключом требуют большого объгма вычислений, они слишком медленны для непрерывного шифрования данных. В первую очередь они используются для управления ключами совместно с обычной аппаратурой шифрования. Методы с открытыми ключами используются для недорогого и безопасного автоматического управления ключами. Несколько групп по стандартам и Национальный институт по стандартам и технологии (NIST) рассматривают такие способы управления ключами [12-16]. Алиса и Боб, например, могут провести обмен ключами на основе метода с открытыми ключами, в котором функции дешифрования хранятся в секрете, а функции шифрования опубликованы. * Шаг 1. По небезопасной линии связи Алиса шлгт Бобу свою несекретную функцию шифрования Ea. * Шаг 2. Боб генерирует случайное число R и шифрует его при поши функции шифрования Алисы, получая зашифрованное сообщение V=Ea(R), которое посылает Алисе. * Шаг 3. Алиса дешифрует сообщение Боба при помощи своей секретной функции дешифрования Da, получая секретное случайное число R R=Da(V). Теперь Алиса и Боб разделяют секретное число R, которое можно использовать для формирования общего ключа шифрования. Однако в этом случае Боб полностью определяет общий ключ шифрования, что в общем случае нежелательно. Шаги 1-3 можно повторить, но Алиса и Боб меняются ролями. В результате каждый из них получает случайное число, сгенерированное другой стороной. Затем они комбинируют числа для получения общего ключа шифрования, который не определяется полностью лишь одной из сторон. В результате обмена всего лишь двумя несекретными числами любые два устройства шифрования сети могут безопасно получить ключ шифрования для установления безопасной связи. Широко используется метод управления ключами, предложенный Диффи-Хеллманом, называемый в [11] SEEK (безопасный электронный обмен ключами). Строго говоря, этот метод не полностью отвечает определению асимметричного шифрования, но при обмене ключами он обладает тем же свойством, позволяющим двум людям разделять секретный ключ путгм обмена только несекретными числами по небезопасной линии связи. Это схема с открытыми ключами в том смысле, что имеются секретные числа и соответствующие им несекретные. В системе SEEK все лица, осуществляющие шифрование в сети, имеют одни и те же несекретные константы длиной 512 бит: * p - это большое простое число, которое определяет поле, обозначаемое GF(p), состоящее из всех неотрицательных целых, меньших p; * a - это целое число в поле GF(p). Криптографическая стойкость этой схемы основана на сложности вычислений дискретных логарифмов в GF(p), когда p - большое простое число, а p-1 имеет большой простой делитель. При заданном целом Х рассмотрим экспоненциальную функцию Y=a**X mod p. При заданном Х относительно легко вычислить Y. С другой стороны при заданном Y очень тяжело вычислить экспоненту Х. Это задача отыскания дискретного логарифма Y. На основе знаний об этой задаче рекомендуются простые числа длиной 512 бит. Теперь Алиса и Боб могут получить общий секретный ключ шифрования (рис.3): * Шаг 1. Алиса генерирует случайное секретное число Ха и вычисляет соответствующее открытое число Ya=a**Xa mod p. Аналогично Боб генерирует Xb и получает Yb=a**Xb mod p. * Шаг 2. Алиса и Боб обмениваются открытыми числами Ya и Yb по небезопасной линии связи. Отметим, что знание открытых чисел Ya и Yb не рскрывает секретных чисел Xa и Xb, поскольку предполагаем, что вычисление дискретных логарифмов является сложным. * Шаг 3. Алиса комбинирует открытое число Боба Yb и свог секретное число Xa, вычисляя секретное число Z Z=Yb**Xa. Боб комбинирует числа Ya и Xb, также получая Z Z=Ya**Xb. Хотя Алиса и Боб используют при вычислениях разные числа, они получают одинаковый результат - Z, потому что умножение членов по экспоненте a коммутативно: Yb**Xa= a**(Xb*Xa)= a**(Xb*Xa)= Ya**Xb. Таким образом, схема Диффи-Хеллмана позволяет Алисе и Бобу вычислить общее секретное число Z, обмениваясь только несекретными числами Ya и Yb. Части этого секретного числа Z могут использоваться в качестве общего ключа шифрования для защиты линии связи. Важно и то, что Z зависит от секретных чисел, независимо сгенерированных Бобом и Алисой. Поэтому Алиса, например, не может сама контролировать общий ключ шифрования. Электронная почта и обмен данными INTERNET приняла методы с открытым ключом и для управления ключами при обычном шифровании, и для создания ЦП сообщений [13,14]. Электронные подписи рассматриваются для применения в электронном обмене данными в целях подписи электронно передаваемых контрактов и платгжных сообщений. Такое свойство ЦП как "неоспаривание" обеспечивает безопасность и своевременность электронного обмена. Английские банки внедрили подобную систему в СПДС (система перевода денежных средств) для систем Point of Sales (POS) [15]. Рабочая группа по безопасности ЛВС IEEE 802.10 разрабатывает проект стандарта, использующего методы с открытым ключом для управления ключами в ЛВС [16]. Контроль доступа Идентификация лиц - это одно из основных требований контроля доступа, будь это доступ в здания или разрешение кредита в торговле, доступ в вычислительные сети или сети связи. Мы опишем применение методов с открытым ключом для идентификации [17]. Обычно аутентификация лица основывается на том, что это лицо имеет, знает и кем оно является по биометрическим параметрам. При доступе к ЭВМ наиболее распространгнной формой идентификации является использование секретного пароля, известного лицу и хранящей его ЭВМ. Ввиду лггкой компрометации паролей в некоторых системах контроля доступа по набору телефонного номера используется система "обратного вызова" в дополнение к паролям. В других случаях используются динамические пароли, генерируемые по некоторому алгоритму, рассчитываемому в небольшом устройстве на батарейках (иногда называемому "право доступа" (token)). Некоторые из этих устройств могут активизироваться только при правильном вводе персонального идентификатора (ПИН) [18]. Небольшие перснальные устройства, описанные выше, не требуют никакого специального оборудования на терминале, где лицо входит в вычислительную сеть. Некоторые из них содержат уникальный секретный алгоритм (часто используется алгоритм шифрования с секретным ключом), который также известен ЭВМ, к которой запрашивается доступ. Во время доступа ЭВМ может послать число-запрос С, отображаемое на терминале, и потребовать от лица вычисления с помощью его устройства соответствующего ответа R, который затем печатается на терминале. Система идентифицирует лицо на основе того, что оно имеет (устройство) и знает (ПИН для активизации устройства). В большинстве систем контроля доступа персональные данные каждого пользователя хранятся в защищгнной ЭВМ. Эти данные должны извлекаться каждый раз, когда кто-то желает получить доступ в вычислительную сеть при помощи пароля или устройства. Во избежание лишних обращений к ЭВМ, хранящей эту базу данных, система "off-line" требует, чтобы пользователь сам предоставил эти данные, используя магнитную карточку, ключ данных, дискету или интеллектуальную карточку [19]. Конечно, процедуры упрощаются, если каждый пользователь представляет свои персональные данные терминалу. Устройства, содержащие некоторые идентификационные персональные данные, обычно требуют дополнительного оборудования для подсоединения персонального устройства к терминалу. Например, магнитные карточки требуютустройства считывания. Они обычно не содержат много данных. Интеллектуальные карточки во многих применениях заменяют магнитные карточки. ИК - это пластиковые карточки стандартного размера со встроенной ИМС, содержащей ячейки памяти для хранения значительного объгма информации и центральный процессор для производства вычислений. Во Франции уже выпущено 60000 ИК. Они содержат один чип с ПЗУ, процессором, ОЗУ, ЭППЗУ или ЭСППЗУ. ИК распространяются во всгм мире, вытесняя кредитные карточки и идентификационные жетоны. Основное преимущество ИК в их малом размере и способности надгжно хранить большой объгм персональных данных с возможностью обновления или изменения. При использовании ЭСППЗУ в карточках можно хранить данные о транзакциях. Некоторые европейские учреждения внедряют ИК для финансовых транзакций, включая использование с телефоном, оборудованном считывателем карточек. Предположим, что в целях идентификации лицо имеет ИК с записанными персональными данными. Лицо может знать пароль, являющийся частью этих данных. Биометрика, определяющая, кем является лицо, может быть представлена в виде отпечатка пальца, рисунка глаза, фотографии, ручной подписи или кода ДНК. Биометрические данные также могут храниться в ИК. Основная проблема при использовании биометрики - это стоимость оборудования для ег измерения. Однако при необходимости высокой степени защиты она может потребоваться в каждой точке доступа. Персональные ИК часто содержат информацию для аутентификации пользователя. Это значит, что терминал или главная ЭВМ, проводящие аутентификацию, могут не содержать базу всех данных пользователя. В таких системах ИК играет главную роль для идентификации пользователя, требующего доступа к главной ЭВМ с терминала. Следовательно, терминал и ГЭВМ должны в первую очередь аутентифицировать данные ИК. Методы с открытыми ключами обеспечивают средства аутентификации таких систем при помощи ЦП, которую может проверить любой терминал. СС создагт цифровую подпись для данных на каждой карточке, и эта ЦП включается в данные карточки. Любое изменение песональных идентификационных данных в карточке приведгт к легко обнаруживаемому несоответствию с ЦП сертификационного центра. Терминал может проверить подпись на карточке, используя несекретное число сертификационного центра. Поскольку это число одинаково при проверке всех подписей этого центра, оно может закладываться в терминалы на заводе. Аутентификация данных ИК показана на рис.4. Таким образом, каждый пользователь имеет в своей ИК все неходимые данные для своей идентификации. Целостность данных может быть достигнута добавлением ЦП сертификационного центра. Первые системы такого типа были использованы Sandia National Laboratories в 1979 году [20,21]. Такой тип ЦП также используется во французских ИК, причгм СС выпускает эти карточки. После выпуска карточек и добавления к данным ЦП центр отвечает за правильную идентификацию владельца карточки. Одноразовая идентификация законных пользователей и такой порядок выпуска карточек являются наиболее критичными местами в системе. Помимо терминалов, оборудованных считывателями карточек, большинство систем контроля доступа имеют биометрические устройства, анализирующие отпечатки пальцев, радужную оболочку глаза, динамику ручной подписи, характеристики голоса и геометрию руки [23,24]. Некоторые из них оперируют с цифровой фотографией, и в будущем возможен анализ ДНК человека. Биометрика лица хранится в его ИК. При аутентификации терминалом данных возможна дальнейшая проверка с помощью биометрических устройств. Регистрация и контроль Компьютерные преступления совершаются в первую очередь законными пользователями системы. У пользователя сети появляется искушение обмануть систему, когда он замечает, что некоторые ошибки при входе остаются незамеченными. Один из путей борьбы с обманом - отслеживание ошибок до конкретных пользователей. При использовании ИК время каждого доступа и расположение терминала может быть записано терминалом на ИК. В последствии каждого пользователя можно запросить о вводе регистрационной информации в ГЭВМ. В дополнение к процессу идентификации ИК может использоваться для создания персональной ЦП. С этой целью ИК должна быть способна вычислить требуемую ЦП и несекретное число для проверки этой ЦП. Этонесекретное число в свою очередь подписывается СС для аутентикации любым лицом. В общем случае существующие ИК не могут производить сложные вычисления, требуемые в методах с открытыми ключами, за приемлемое время. Поэтому в ИК выделяются специальные чипы для математических вычислений [25-27]. Фирма CYLINK является лидером в производстве таких чипов, обеспечивающих на малой площади выполнение операций сложения по модулю, умножения и возведения в степень (т.е. операций, необходимых для создания ЦП). До недавнего времени создание таких чипов считалось невозможным. CYLINK модифицировала чип 512-b для уменьшения размеров, жертвуя при этом скоростью вычислений. Использовалась КМОП-структура (двойная металлическая, 1 микрон) площадью 2 кв. мм. Это менее 10% от 22 кв. мм, определгнных ISO для площади ИК. При тактовой частоте 10 МГц чип производит 512-битное возведение в степень за среднее время 2 с. На рис. 5 показана схема чипа (5х4 мм), включающего 8-битный центральный процессор со 128 байтами ОЗУ, 4 кбайта ПЗУ, 4 кбайта ЭСППЗУ и процессор для реализации метода с открытыми ключами. Надгжная идентификация и персональные цифровые подписи при помощи ИК будут в основе систем контроля доступа будущего. Уменьшится количество бумажной работы, и мы достигнем безопасного электронного общества. Все транзакции будут подписываться ИК пользователей, при этом будет обеспечиваться возможность проверки регистрационной информации. Все электронные сообщения также будут подписываться карточками. Недавно Digital Equipment Corporation описала архитектуру безопасности распределгнной системы, включающую многие из этих идей на основе ИК и методов с открытым ключом [28]. При использовании таких ИК каждый пользователь обладает доверенным устройством, позволяющим проводить идентификацию без какойлибо базы данных. Это обеспечивает защиту при выполнении транзакций по телефону или с домашнего терминала. Например, телефон, оборудованный считывателем карточки, как во Франции, может использоваться как автоответчик, когда лицо может позвонить в банк и перевести деньги на свою ИК. Карточка служит электронным кошельком, с которого продавец может снять деньги, используя считыватель карточки. Все транзакции могут быть подписаны обеими сторонами. Домашний терминал, оборудованный считывателеи ИК, также можно использовать для всех услуг на дому (например, служба Minitel во Франции, система Prodigy фирм IBM и Sears в США, Nintendo в Японии). Возможно такие системы будут использоваться в безопасных системах электронного голосования [29]. Возможно применение ИК совместно с цифровым радио, оборудованным считывателем. При установке таких радиоустройств в автомобилях можно осуществлять электронную оплату за стоянку и проезд по шоссе так же, как это делается в торговых терминалах. Быстрота выполнения транзакций позволит уменьшить заторы возле будок для оплаты. Подобные методы контроля доступа и регистрации, основанные на методах с открытым ключом, можно использовать совместно с личными карманным телефоном типа английского CT-2. Проверка программного обеспечения и обнаружение вирусов Пакет программного обеспечения (ПО) можно рассматривать как сообщение, которое может подписать производитель ПО. Тогда любое лицо может проверить аутентичность подписи и целостность пакета ПО. ЭВМ также может периодически проверять целостность ПО или отдельных программ, с которыми она работает. Хотя не решается проблема защиты от незаконного копирования, использование подписей позволяет убедиться, что ПО не изменялось с момента его подписания производителем. Например, игровые машины могут быть настроены только на выполнение авторизованных игр с соответствующими подписями. Для проверки ПО предполагается наличие защищгнного модуля проверки, который нельзя обойти. При использовании ИК, использующих методы с открытым ключом, и ЭВМ со считывателем любой пользователь может подписать создаваемую программу или базу данных. Например, Алиса (имеющая ИК) может подписать базу данных и сохранить на жестком диске своего персонального компьютера. В дальнейшем при обращении к базе Алиса может воспользоваться карточкой для проверки подписи. Если проверка прошла успешно, она знает, что данные не изменялись после последнего подписания. В принципе, любое лицо может проверить подпись и убедиться, что данные не изменялись [30]. Очевидно, что это один из способов обнаружения вирусов. Датчик ядерных испытаний На рис.6 проиллюстрирована идея, описанная Симмонсом [31,32], согласно которой ЦП используются при контроле за выполнением соглашения об ограничении ядерных испытаний. Если бы США и СССР договорились о полном запрете на ядерные испытания, то в различных районах этих стран можно было бы установить сейсмографы. Эти датчики обнаруживают сотрясение почвы при ядерном взрыве. Страна, на территории которой установлены датчики, может подозревать, что помимо сейсмоинформации передаются и разведсведения. Поэтому важно, чтобы передаваемая информация была доступна обеим странам. В то же время, каждая страна должна быть уверена, что поступающая с сейсмографов информация не является поддельной. Предполагаемый сейсмограф оборудуется физически защищгнным модулем, способным создавать свою ЦП для подписания каждого блока сейсмических данных. Затем данные передаются обеим странам и, возможно, в ООН. США могут аутентифицировать подпись и проверить целостность данных; то же относится и к СССР. Однако Советский Союз не может подделать показания сейсмографов, установленных на его территории, поскольку ему не известна функция шифрования. Удовлетворяются требования обеих стран. Аналогично СССР может разместить свои сейсмографы в важных районах США. Объекты, защищгнные от подделки Описанные методы можно использовать не только для создания защищгнных от подделки подписей, но и защищгнных от подделки объектов [32]. Фирма Light Signatures [33] предложила систему защиты ценных бумаг от подделки, показанную на рис. 7. Основная идея состоит в измерении некоторой характеристики бумаги и подписании (шифровании) ег на секретном ключе производителя ценных бумаг. Для банкнот это будет секретный ключ шифрования Печатного комитета США. Характеристику бумаги получают, пропуская узкий интенсивный луч света через участок бумаги и измеряя интенсивность света на выходе. Функция интенсивности определяется неповторимым рисунком бумаги н а данном участке. Затем измеренная величина преобразуется к цифровому виду и шифруется секретной функцией. Зашифрованная величина затем печатается на бумаге в цифровом виде (например, штриховой код). Предположим, позднее в банке проверяется аутентичность ценных бумаг. Для системы проверки Light Signatures требуется только несекретная функция дешифрования для расшифровки данных на бумаге и восстановления подписанной функции интенсивности. Затем измеряется действительная функция интенсивности. Если результаты совпадают с некоторой среднеквадратичной погрешностью, документ считается аутентичным. Эта идея применима ко всем типам объектов, где требуется обнаружение подделки. В автопромышленности существовала проблема, когда нечестные поставщики снабжали производителей некачественными частями [34]. Опять же идея обнаружения подделки зависит от измерения или создания уникальной характеристики для каждого объекта. Например, производитель мжет пометить каждый тормоз специальной краской, образующей случайный рисунок, который можно зафиксировать и преобразовать в цифровую форму. Цифровую величину можно зашифровать при помощи секретной функции производителя. Зашифрованные данные наносятся в виде штрихового кода на тормоз рядом с меткой. Тормоз, поступивший к производителю, например, "Крайслеру", можно проверить, используя несекретную функцию шифрования производителя тормозов. Процесс проверки включает дешифрование зашифрованной характеристики, восстановление характеристики из этих данных и сравнение с измеренной характеристикой, имеющейся на тормозе. При их совпадении с некоторой погрешностью тормоз считается аутентичным. Основная задача - это создание для защищаемых объектов действительно случайного рисунка, который нельзя удалить. Эта задача сходна по идее с обнаружением "ложных" пользователей, когда биометрика используется как уникальная характеристика. Но вместо прикрепления шифрованной версии цифровой характеристики к человеку, мы рекомендуем использование ИК, содержащей в памяти эту характеристику, подписанную (зашифрованную) распределителем каточек. Поскольку функция шифрования держится в тайне производителем, зашифрованные данные не могут быть созданы кем-либо другим. Процесс проверки требует только несекретно ключа дешифрования распределителя карточек. При простой проверке - сложная подделка. Ответ на запрос В радарных системах часто требуется опознать самолгт, появившийся на экране радара. При помощи ЦП самолгт может подписать полученный сигнал и передать его обратно. Если самолгт оборудован такой системой, оператор радара может генерировать случайный сигнал запроса R и послать его самолгту по радиоканалу. Самолгт подписывает запрос и радирует его обратно. Оператор радара может проверить подпись и аутентифицировать самолгт. Только самолгт может создать свою уникальную подпись, а проверить его аутентичность может любой. Системы типа "запрос-ответ" предлагаются для контроля доступа с использованием ИК [19,21-23,28]. На рис.8 показано, как это делается. Как и в случае с самолгтом, терминал делает запрос карточке, которая отвечает подписью. Терминал может проверить подпись, тем самым аутентифицируя карточку. Кроме того, могут иметься биометрические устройства, измеряющие какие-либо характеристики. Эти данные также вводятся в карточку, где проверяются перед активизацией карточки. ЗАКЛЮЧЕНИЕ Первое применение криптографии с открытым ключом в Sandia [20, 21] наступило вскоре после статьи Диффи-Хеллмана в 1976 году. Однако только сейчас начинается широкое применение. Предложены несколько национальных и международных стандартов по использованию методов с открытым ключом для управления ключами и цифровой подписи. С развитием интеллектуальных карточек, способных создавать ЦП, личная многоцелевая идентификационная карточка приблизит нас к безопасному безбумажному электронному обществу. Copyright ПК-93