ИСПОЛЬЗОВАНИЕ ЗАЩИЩЕННЫХ КАРМАННЫХ КОМПЬЮТЕРОВ ДЛЯ РЕШЕНИЯ ЗАДАЧ РАДИОМОНИТОРИНГА НА МЕСТНОСТИ..
ТЕРЕНИН Алексей Алексеевич, кандидат технических наук
КРИПТОГРАФИЧЕСКИЕ АЛГОРИТМЫ, ПРИМЕНЯЕМЫЕ ДЛЯ ОБЕСПЕЧЕНИЯ ИНФОРМАЦИОННОЙ БЕЗОПАСНОСТИ ПРИ ВЗАИМОДЕЙСТВИИ В ИНТЕРНЕТ
Окончание. Начало в № 3, 2006 г.
Асимметричные алгоритмы шифрования
Криптосистемы с открытым ключом строятся, как правило, на основе сложной математической задачи вычисления функции, обратной заданной. Такие функции называются однонаправленными, т.е. их обращение представляет собой практически неразрешимую задачу. Суть метода шифрования в том, что вычисление функции от зашифрованного сообщения в прямом направлении проходит с использованием открытого ключа принимающего абонента, а при расшифровке (вычислении обратной функции) применяется его секретный ключ. Как и следовало ожидать, математических задач, удовлетворяющих перечисленным требованиям, известно немного, и лишь на некоторых из них были построены используемые на практике шифры. Рассмотрим ряд наиболее известных криптосистем с открытым ключом.
- RSA [1]. Используется задача факторизации (вычисления простых сомножителей) большого целого числа. Построен на основе перемножения двух простых чисел большой разрядности [2]. Широко применяется в криптографических протоколах закрытия информации и аутентификации.
- Эль-Гамаль (El-Gamal) [3, 4]. Основан на задаче дискретного логарифмирования в конечном поле [2]. Используется в стандартах электронной цифровой подписи (ЭЦП) DSS [5], ГОСТ Р34.10-94 [6] и т.д.
- Эллиптические кривые (elliptic curve) [7]. Основан на задаче дискретного логарифмирования на эллиптических кривых в конечном поле.
Обратные задачи разложения на множители и дискретного логарифмирования решаются методами, близкими к полному перебору, и при большой разрядности чисел являются трудновычислимыми.
Криптосистемы с открытым ключом используются в основном в трех направлениях:
- закрытие информации;
- аутентификация с использованием ЭЦП;
- защищенное от перехвата распределение открытых ключей (криптосистема Диффи – Хеллмана (Diffie Hellman)) [8].
Более подробно преимущества и недостатки асимметричных криптосистем рассмотрены в [5, 6, 9, 16, 22, 30, 31].
Хэш-функции
Протоколы защиты целостности и аутентичности при формировании имитовставок и ЭЦП используют криптографические «сжимающие» хэш-функции, позволяющие получить из блока данных произвольной длины значение с фиксированным количеством бит [10, 11, 12, 13, 14, 15].
В целях уменьшения объема ЭЦП и снижения времени на ее формирование и проверку она применяется к хэш-значениям, которые обычно значительно короче исходных сообщений. К криптографическим хэш-функциям предъявляется ряд требований, направленных на затруднение подделки ЭЦП путем нахождения такой модификации блока данных, при которой значение хэш-функции и, следовательно, ЭЦП остаются неизменными.
Наиболее широкое распространение получили следующие хэш-функции, построенные на системе циклически повторяемых перестановок и подстановок (в скобках указана длина вырабатываемого хэш-значения в битах):
- MD5 [16, 17, 18, 19] (128);
- SHA-1 [20] (160);
- ГОСТ [21] (256).
Таблица 1. Перечень и параметры хэш-функций
Хэш-функция |
Длина значения, бит |
Размер блока, бит |
Производительность, Мб/с |
Примечание |
MD2 |
128 |
|
нет данных |
Разработана Роном Ривестом в 1989 г. |
MD4 |
128 |
448 |
23,9 |
Разработана Роном Ривестом в 1990 г. |
MD5 |
128 |
512 |
16,7 |
Разработана Роном Ривестом в 1991 г. |
RIPEMD-160 |
160 |
|
5,67 |
Разработана в 1995 г. в Европейском проекте RIPE |
SHA-1 |
160 |
512 |
6,88 |
Разработана в 1995 г. в NIST |
ГОСТ |
|
|
0,9 |
ГОСТ России |
В табл. 1 не приведены редко используемые и экзотические хэш-функции, а также хэш-функции, построенные на симметричных блочных шифрах по схемам Мейера – Матиаса (Meyer – Matyas) и Девиса Прайса (Davies – Price) [9].
Подробнее упомянутые хэш-функции описаны в [11, 16 21].
Хотя средства криптографической защиты с «открытым ключом» или асимметричные криптосистемы особенно широко используются начиная с конца 70-х гг. [22], они обладают очень серьезным недостатком – крайне низким быстродействием. В связи с этим на практике обычно используется комбинированная схема криптографической защиты [23]. При установлении соединения и аутентификации сторон используется криптография с «открытым ключом», затем генерируется сеансовый ключ для симметричного шифрования, на котором закрывается весь трафик между абонентами. Сеансовый ключ также распространяется с использованием открытого ключа.
Рис. 1. Схема алгоритма асимметричной криптосистемы
Таблица 2. Асимметричные криптосистемы
Название метода |
Метод взлома |
Криптостойкость, MIPS |
Примечание |
RSA |
факторизация больших простых чисел |
2,7•1028 для ключа 1300 бит |
Разработан в 1977 г. Роном Ривестом, Ади Шамиром и Леонардом Эйдельманом. |
LUC |
факторизация больших простых чисел |
|
|
El-Gamal |
нахождение дискретного логарифма в конечном поле |
при одинаковой длине ключа криптостойкость равная RSA |
Разработан Эль-Гамалем. Используется в алгоритме цифровой подписи DSA-стандарта DSS |
Эллиптические уравнения |
решение эллиптических уравнений |
криптостойкость и скорость работы выше, чем у RSA |
Современное направление. Разрабатывается многими ведущими математиками |
Метод RSA в настоящее время является стандартом де-факто в системах информационной безопасности и рекомендован CCITT (Consultative Committee in International Telegraphy and Telephony – Международным консультативным комитетом в области телеграфии и телефонии, МККТТ) в стандарте X.509 [24]. RSA используется во многих международных стандартах (S-HTTP, PEM, S-MIME, S/WAN, STT, SSL, PCT, SWIFT, ANSI X.9.31 и т.д.) [24, 25, 26, 27], в системах обслуживания кредитных карточек, в операционных системах для защиты сетевых протоколов.
Для методов RSA и Эль-Гамаля проведено огромное количество научных исследований, изучено большое количество методов их криптоанализа, защиты от атак, детально рассчитана криптостойкость в зависимости от длины ключа и других параметров. Оба метода обладают одинаковой криптостойкостью (при одинаковой длине ключа) и примерно одинаковой скоростью работы. Учитывая, что метод эллиптических уравнений (elliptic curve) проходит стадию апробации и не был подвергнут до настоящего времени такому большому количеству попыток взлома, как методы RSA и Эль-Гамаля, использование в системах шифрования двух последних выглядит предпочтительнее.
Подробное описание данных алгоритмов приведено в [1, 7, 11, 16, 29, 31].
Электронная цифровая подпись
Если информацией обмениваются стороны, не доверяющие друг другу или заинтересованные в проведении действий, направленных друг против друга (банк и клиент, магазин и покупатель), необходимо применять асимметричные методы шифрования, а также метод ЭЦП.
Необходимо обеспечить не только конфиденциальность, но и целостность сообщения (невозможность подменить сообщение или что-то в нем изменить), а также авторство. Кроме этого, необходимо не допустить возможности отказа автора послания от факта отправления подписанного сообщения.
Электронная подпись документа позволяет установить его подлинность. Кроме того, криптографические средства обеспечивают защиту от следующих злоумышленных действий:
- отказ (ренегатство) – абонент А заявляет, что не посылал сообщения Б, хотя на самом деле посылал;
- модификация (переделка) – абонент Б изменяет документ и утверждает, что данный документ (измененный) получил от абонента А;
- подмена – абонент Б формирует документ (новый) и заявляет, что получил его от абонента А;
- активный перехват – нарушитель (подключившийся к сети) перехватывает документы (файлы) и изменяет их;
- «маскарад» – абонент В посылает документ от имени абонента А;
- повтор – абонент В повторяет ранее переданный документ, который абонент А послал абоненту Б.
Все перечисленный виды злоумышленных действий наносят существенный ущерб. Кроме того, возможность злоумышленных действий подрывает доверие к компьютерной технологии [28, 29]. Проблему аутентификации можно решить на основе криптографического подхода, разработав специальные алгоритмы и программы.
При выборе алгоритма и технологии аутентификации необходимо предусмотреть надежную защиту от всех вышеперечисленных видов злоумышленных действий (угроз). Однако в рамках классической (одноключевой) криптографии тяжело защититься от всех приведенных видов угроз, поскольку имеется принципиальная возможность злоумышленных действий одной из сторон, владеющей секретным ключом.
Никто не может помешать абоненту, например, сгенерировать любой документ, зашифровать его на имеющемся ключе, общем для клиента и банка, потом заявить, что он получил этот документ от законного передатчика.
Эффективным является использование схем, основанных на двухключевой криптографии [29]. В этом случае каждый передающий абонент имеет свой секретный ключ подписи, а у всех абонентов есть несекретные открытые ключи передающих абонентов.
Эти открытые ключи можно трактовать как набор проверочных соотношений, позволяющих судить об истинности подписи передающего абонента, но не позволяющих восстановить секретный ключ подписи. Передающий абонент несет единоличную ответственность за свой секретный ключ. Никто, кроме него, не в состоянии сгенерировать корректную подпись. Секретный ключ передающего абонента можно рассматривать как личную печать, и владелец должен всячески ограничивать доступ к нему посторонних лиц. [28].
Для практического воплощения идеи открытого шифрования требовалось найти конкретные и конструктивные ответы на следующие вопросы:
- как «замешивать» индивидуальный ключ пользователя с содержимым документа, чтобы они стали неразделимы?
- как проверить, что содержание подписываемого документа и индивидуальный ключ пользователя подлинны, не зная заранее ни того, ни другого?
- как обеспечить возможность многократного использования автором одного и того же индивидуального ключа для цифровой подписи большого количества электронных документов?
- как гарантировать невозможность восстановления индивидуального ключа пользователя по любому количеству подписанных с его помощью электронных документов?
- как гарантировать подлинность проверки цифровой подписи и содержимого электронного документа?
- как обеспечить юридическую полноправность электронного документа с цифровыми подписями, существующего без бумажного дубликата или другого заменителя?
Для ответа на все эти вопросы потребовалось около 20 лет с того момента, как эта идея была впервые сформулирована в 1976 г. в статье Уитфилда Диффи и Мартина Хеллмана. Сейчас уже можно определенно сказать, что все эти вопросы решены: есть полный арсенал технических средств авторизации электронных документов, называемых цифровой подписью. Современные принципы построения системы цифровой подписи просты и изящны:
- методы вычисления и проверки цифровых подписей всех пользователей системы одинаковы и основываются на широко известных математических задачах;
- методы вычисления ключей проверки цифровых подписей и индивидуальных ключей генерации цифровых подписей также одинаковы для всех и хорошо известны;
- индивидуальные ключи генерации цифровых подписей выбираются самими пользователями по случайному закону из большого множества всех возможных ключей;
- при конкретном алгоритме цифровой подписи его стойкость может быть оценена без привлечения какой-либо «закрытой» информации на основе только известных математических результатов и разумных допущений о вычислительных мощностях потенциального взломщика.
Средства криптографической защиты обеспечивают подлинность и аутентичность информации, кроме решения проблемы сохранения ее конфиденциальности. Данные функции выполняет технология цифровой подписи [6].
Схема работы цифровой подписи изображена на рис. 2.
Рис. 2. Алгоритм электронной цифровой подписи
На вход алгоритма поступает файл, необязательно текстовый, основное требование, предъявляемое к входным параметрам ЭЦП, фиксированная длина, для этого используется хэш-функция.
Теоретически применение различных средств шифрования сулит радужные перспективы всем компаниям, использующим в своей деятельности Интернет, но тут возникает новая проблема найти компромисс с государством и его законами, данная проблема подробно освещена в [30].
В соответствии с Федеральным законом «Об электронной цифровой подписи» № 1-Ф3 от 10 января 2002 г. электронная цифровая подпись в электронном документе признается равнозначной собственноручной подписи в документе на бумажном носителе. Также обеспечивается правовое регулирование для организации электронного документооборота, распределения открытых и закрытых ключей, построения центров сертификации, определяются ответственности сторон.
Принятие данного закона, хотя в нем есть некоторые неопределенности, позволил регламентировать использование асимметричных средств шифрования, в данном случае ЭЦП, для защиты данных в Интернете.
Литература
- Johnson D.B., Matyas S.M. Asymmetric Encryption: Evolution and Enhancements. Cryptobytes, RSA Laboratories, 1996, vol. 2, № 1, p. 1 – 6.
- Варфоломеев А.А., Пеленицын М.Б. Методы криптографии и их применение в банковских технологиях. Учебное пособие. М.: МИФИ, 1995.
- Danisch H. The Exponential Security System TESS: An Identify-Based Cryptographic Protocol for Authenticated Key-Exchange. RFC 1824, European Institute for System Security, 1995.
- Nechvatal James. Public-Key Cryptography. NIST, Gaithersburg, 1990.
- Federal Information Processing Standards Publication 186. Digital Signature Standard (DSS). NIST, US Department of Commerce, Washington D.C, 1994.
- ГОСТ Р34.10-94. Криптографическая защита информации. Процедуры выработки и проверки электронной цифровой подписи на базе асимметричного криптографического алгоритма.
- Menezes A. Elliptic Curve Cryptosystems. Cryptobytes, RSA Laboratories, 1995, vol. 1, 2, p. 1 – 4.
- PKCS #3: Diffie-Hellman Key-Agreement Standard. RSA Labaroratories.
- Kaliski B. Timing Attack on Cryptosystems. Bulletin, RSA Laboratories, 1996, № 2, p. 1 2.
- Аносов В.Д., Леонов В.А., Логачев О.А., Лунин А.В. Исследование способов построения алгоритмов хеширования данных. Безопасность информационных технологий, 1997, № 3, с. 5 – 9.
- Kaliski B., Robshaw M. Message Authentication with MD5. Cryptobytes, RSA Laboratories, 1995, vol. 1, № 1, p. 5 – 8.
- Bellare M. The HMAC Construction. Cryptobytes, RSA Laboratories, 1996, vol. 2, № 1, p. 12 – 15.
- Federal Information Processing Standards Publication 113. Computer Data Authentication. NIST, US Department of Commerce, Washington D.C, 1985.
- Federal Information Processing Standards Publication 190. Guideline for Advanced Authentication Technology Alternatives. NIST, US Department of Commerce, Washington D.C, 1994.
- Federal Information Processing Standards Publication 196. Entity Authentication Using Cryptography. NIST, US Department of Commerce, Washington D.C, 1997.
- Bruce Schneier. Applied Cryptography: Protocols, Algorithms and Source Code in C. John Willey & Sons, 1994.
- Rivest R.L. The MD5 Message-Digest Algorithm. RFC 1321, MIT Labaratory for Computer Science and RSA Data Security, Inc., 1992.
- Robshaw M.J. On Recent Results for MD2, MD4 and MD5. Bulletin, RSA Laboratories, 1996, 4, p. 1 – 6.
- Dobbertin H. The Status of MD5 After Recent Attack. Cryptobytes, RSA Laboratories, 1996, vol. 2, № 2, p. 1 – 6.
- Federal Information Processing Standards Publication 180-1. Secure Hash Standard (SHS). NIST, US Department of Commerce, Washington D.C, 1995.
- ГОСТ Р34.11-94. Криптографическая защита информации. Функция хеширования.
- Диффи У. Первые десять лет криптографии с открытым ключом. ТИИЭР, май 1988, т. 76, № 5.
- PGP For Business Security For Windows 95/NT. User’s Guide. Pretty Good Privacy Inc.
- Kent S. Privacy Enhancement for Internet Electronic Mail: Part II: Certificate-Based Key Management. RFC 1422, 1993.
- Linn J. Privacy Enhancement for Internet Electronic Mail: Part I: Message Encryption and Authentication Procedures. RFC 1421, 1993.
- Balenson D. Privacy Enhancement for Internet Electronic Mail: Part III: Algorithms, Modes and Identifiers. RFC 1423, 1993.
- Kaliski B. Privacy Enhancement for Internet Electronic Mail: Part IV: Key Certification and Related Services. RFC 1424, 1993.
- Джефф Просис. Цифровая подпись: принципы работы, PC Magazine, April 9, 1996, c. 237.
- Анита Карве. Инфраструктура с открытыми ключами, LAN/Network Solution Magazine #8/97, Журнал сетевых решений, декабрь 1997, том 3, № 8.
- Зырянов Михаил. Шифрование данных в Internet средство защиты или нападения? Computerworld Россия, 1998, 13.
- Что такое ГОСТ 28147-89.
- Майданский И.С. Сетевые ресурсы и их уязвимости. М.: 1999
- ГОСТ 28147-89. Системы обработки информации. Защита криптографическая. Алгоритм криптографического преобразования.
- Тайли Э. Безопасность персонального компьютера. /Пер. с англ. Минск: «Попурри», 1997, с. 480.
- Стенг Д., Мун С. Секреты безопасности сетей. Киев: Диалектика, 1996, с. 544.