10.2.2. Однонаправленные функцииОсобую роль в криптографии играют однонаправленные функции, которые в общем случае не являются биективными. Однонаправленной называется такая функция Для построения криптографических систем защиты информации чаще используются однонаправленные функции, для которых обратное преобразование существует и однозначно, но вычислительно нереализуемо. Они называются вычислительно необратимыми функциями. В качестве примера однонаправленной функции Напомним, что простым числом называется целое число, которое не делится ни на какие числа, кроме себя самого и единицы. Пример 10.1. Для примера возьмем небольшое простое число Функция Задача дискретного логарифмирования состоит в том, что для известных целых По современным оценкам теории чисел при целых числах Следует отметить, что пока не удалось доказать, что не существует эффективного алгоритма вычисления дискретного логарифма за приемлемое время. Исходя из этого, модульная экспонента отнесена к однонаправленным функциям условно, что, однако, не мешает с успехом применять ее на практике. Одним из первых применений однонаправленных функций было решение задачи обеспечения безопасности и использования пароля, по которому осуществляется доступ пользователя к ресурсам и услугам в автоматизированных системах. Открытое значение Кроме однонаправленных функций, не имеющих вычислительно простого обратного отображения даже для законных пользователей, знающих секретную ключевую информацию, в криптографии широко используются однонаправленные функции, для которых знание секретного ключа дает возможность законному пользователю вычислительно просто находить обратное отображение. Они получили название однонаправленных функций с потайным ходом, иногда их называют однонаправленными функциями с лазейкой. Однонаправленные функции с потайным ходом Быстрое развитие криптографии в последние два десятилетия во многом стало возможным благодаря открытию американскими учеными В. Диффи и М. Хэлманом однонаправленных функций с потайным ходом и их использованием для различных криптосистем защиты информации [1, 31]. Однонаправленная функция с потайным ходом есть однонаправленная функция Для нарушителя, не знающего информации Однонаправленные функции с потайным ходом относятся к вычислительно необратимым функциям. Функция вычислительно необратима, если при попытке формирования алгоритма нахождения обратного отображения к ней противник наталкивается на непреодолимую вычислительную проблему. Оценивая стойкость криптосистем, построенных на основе известных однонаправленных функций с потайным ходом, отметим, что ни одна из них не является безусловно стойкой. Это объясняется тем, что нарушитель с теоретически бесконечными вычислительными ресурсами способен вычислять обратное отображение к таким функциям. На основе однонаправленных функций с потайным ходом можно построить криптосистемы аутентификации информации в условиях взаимного недоверия корреспондентов, системы шифрования информации, в которых отправители сообщений могут пользоваться несекретными ключами шифрования, криптосистемы обмена секретной ключевой информации по открытым каналам связи, а также многие другие криптосистемы. К настоящему времени предложено большое количество однонаправленных функций с потайным ходом, построенных на основе известных вычислительно сложных математических задач. Наиболее часто для построения однонаправленных функций с потайным ходом используется сложность решения следующих теоретико-числовых задач: отыскание дискретного логарифма элемента в большом конечном поле или группе (криптосистема открытого распространения ключей Диффи-Хэллмана, криптосистема шифрования и криптосистема цифровой подписи сообщений Эль-Гамаля, криптосистема цифровой подписи сообщений Шнорра и другие криптосистемы) [1, 31, 36]; разложение больших чисел на простые множители (криптосистема шифрования и криптосистема цифровой подписи сообщений РША, криптосистема цифровой подписи сообщений Рабина и другие криптосистемы) [1, 19]; задача об укладке целочисленного ранца (класс ранцевых систем шифрования информации Меркля-Хэллмана) [1, 36]; декодирование неизвестных получателю кодов Гоппы (класс систем шифрования информации Мак-Эллиса) [1]. Рассмотрим конкретные однонаправленные функции с потайным ходом, послужившие основой для широко используемых на практике криптографических систем защиты информация. Однонаправленная функция РША с потайным ходом В 1978 году была предложена первая однонаправленная функция с потайным ходом, положенная в основу широко используемой на практике несимметричной криптографической системы РША. Первые буквы фамилий ее авторов (Р. Ривеста, А. Шамира и Л. Адлемара) образовали общепринятое название предложенной ими функции и криптосистемы. Для описания однонаправленной функции РША с потайным ходом требуются некоторые сведения из элементарной теория чисел [1, 19, 31]. Однонаправленная функция РША с потайным ходом определяется как дискретное возведение значения Пусть Исследования однонаправленной функции РША с потайным ходом показали, что практически все попытки противостоящей стороны получить информацию о потайном ходе эквивалентны разложению За последние годы в области разработки эффективных методов факторизации достигнуты существенные успехи, поэтому для обеспечения требуемой безопасности применения однонаправленной функции РША с потайным ходом должны использоваться числа Однонаправленная функция Эль-Гамаля c потайным ходом Ранее была рассмотрена однонаправленная функция на основе вычисления дискретных логарифмов в алгебраической группе. Поле Галуа Задача вычисления дискретных логарифмов в алгебраическом поле формулируется следующим образом. При заданных простом числе Число На основе однонаправленной функции Эль-Гамаля с потайным ходом, как для функции РША, можно построить несимметричную систему шифрования информации. Безопасность использования однонаправленной функции Эль-Гамаля с потайным ходом основана на вычислительной сложности задачи дискретного логарифмирования в алгебраическом поле большой размерности. Объем вычислений для ее решения выше, чем при факторизации составного числа. Однонаправленная функция с потайным ходом на основе алгебраических уравнений по модулю 2 Значение однонаправленной функции
где Над вектором
где Рассмотренный принцип построения однонаправленной функции с потайным ходом используется при построении широкого класса блочных систем шифрования (класс блочных шифров Фейстеля) к которому принадлежат известный американский алгоритм шифрования данных DES и отечественный алгоритм шифрования согласно ГОСТ 28147–89 [1, 31, 36].
|