Научная литература
booksshare.net -> Добавить материал -> Физика -> Аветисян Р.Д. -> "Теоретические основы информатики" -> 29

Теоретические основы информатики - Аветисян Р.Д.

Аветисян Р.Д., Аветисян Д.О. Теоретические основы информатики — Телеком , 2003. — 170 c.
Скачать (прямая ссылка): teoriticheskieosnoviinformatiki2003.pdf
Предыдущая << 1 .. 23 24 25 26 27 28 < 29 > 30 31 32 33 34 35 .. 64 >> Следующая


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

Принято считать, что во всех рассмотренных выше криптосистемах при шифровании и расшифровании конфиденциальных текстов используется один и тот же секретный ключ. В принципиальном же плане такое утверждение не совсем верно. Вернемся, например, к рассмот-

75

ГЛАВА 5 рению простейшего подстановочного алгоритма, реализованного путем постоянного сдвига всех букв алфавита на 8 позиций вправо (см. выше). В рамках этой системы при шифровании исходных текстов буква'а' заменяется буквой 'щ', тогда как при расшифровании криптограмм та же буква 'а' заменяется буквой 'и'. Иными словами, ключи шифрования и расшифрования в общем-то различны, но переход от ключа шифрования к ключу расшифрования настолько прост, что эти ключи практически отождествляют. Для человека, владеющего ключом шифрования, никакого труда не представляет расшифрование шифрограмм. Иными словами, если у = /(л) - функция шифрования, то нахождение функции л' = /""'(у) настолько просто, что функции f(x) и /"'(у) практически отождествляют и говорят, что имеют дело с одним и тем же секретным ключом.

Существенно по-иному обстоит дело в криптосистемах открытого шифрования, где определение значения функции/~'(у) на основе значения функции f(x) чрезвычайно затруднено. В следующем разделе мы проанализируем принцип построения алгоритмов открытого шифрования, где ключи шифрования и расшифрования различны настолько, что знание ключа шифрования вовсе не является достаточным для расшифрования криптограмм.

ОБ ОДНОСТОРОННИХ ФУНКЦИЯХ И О КРИПТОСИСТЕМАХ ОТКРЫТОГО ШИФРОВАНИЯ

Еще в начале шестидесятых годов для предотвращения несанкционированного доступа к различным объектам (ЭВМ, базы данных, файлы и т.д.)?конкретнее, для организации парольного доступа к объектам, применялся метод так называемых односторонних функций. Под ним подразумевают функции у = /(л), такие, что вычисление значения у при заданном х не представляет особого труда, тогда как нахождение х, соответствующего заданному значению у, чрезвычайно трудно, точнее, связано с чрезмерно большим объемом вычислений, реализация которых за обозримый промежуток времени не удается. Пусть, к примеру, рассматривается функция

у = f(x) = Ax mod(/V), (4.3)

где X и N - чрезмерно большие числа, а А - произвольное число из интервала [2, N - 2]. Здесь при заданном х значение у вычисляется относительно просто, тогда как для вычисления значения х =/~'(у) связано с реализацией чрезмерно большого объема вычислений.

Одним из возможных приложений этой или любой другой односторонней функции может служить упомянутый выше пример организации парольного доступа к ЭВМ или иным объектам ограниченного доступа. В традиционных схемах его организации таблица паролей хра-

76 нится в памяти ЭВМ и для доступа к ней от каждого /-го пользователя требуется назвать свой пароль л(/). Наличие названного х(/) в таблице паролей является достаточным для того, чтобы допустить данного пользователя к ЭВМ. Если, к примеру, противнику удалось завладеть таблицей паролей, то, называя те или иные пароли, он может беспрепятственно получить доступ к ЭВМ, имитируя любого пользователя. Если же в таблице доступа хранить не сами значения паролей х(/), а только значения соответствующих им у((х(/)), где у =f(x) - некоторая односторонняя функция, то доступ к ЭВМ можно разрешить лишь после того, как в таблице окажется вычисленное на основе предъявленного данным пользователем пароля х(/) значение y(x(i)). При такой постановке интерес противника к этой таблице сразу же отпадет, поскольку на основе приведенных там значений у значения самих паролей, т.е. значения х(/) из-за односторонности функции у = /(л),он не может вычислить.

Из приведенного примера легко заметить, насколько важными для практического применения являются односторонние (мы бы их назвали храповыми) функции. Но то, что ввели в рассмотрение сначала в теоретическом плане, а потом и в плане практического применения У. Диф-фи и М. Хеллман, повлекло за собой настоящую революцию в современной криптографии. В 1976 г. они опубликовали статью "Новые направления в криптографии", где впервые ввели в рассмотрение понятие односторонних функций с ловушкой (лазейкой). Как и все остальные односторонние функции у = /(х), это функции, где вычисление у = fix) легко осуществимо, тогда как вычисление х =/-'(у) связано с практически непреодолимыми трудностями. Но в отличие от других односторонних функций, односторонние функции с ловушкой обладают тем специфическим свойством, что при знании определенной информации (и только при этом!) вычисление x = /"'(у) становится легко реализуемым. Иными словами, для лиц, владеющих этой информацией, функция у = Дх) становится легко обратимой, тогда как для всех остальных лиц, не владеющих этой информацией, она остается практически необратимой. Именно эта информация и выполняет роль той ловушки (лазейки), с помощью которой удается обращать функции такого типа.
Предыдущая << 1 .. 23 24 25 26 27 28 < 29 > 30 31 32 33 34 35 .. 64 >> Следующая
Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed