Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОЗІ / Лекц_ї / все / Методы и средства защиты информации, 2003.pdf
Скачиваний:
830
Добавлен:
05.06.2015
Размер:
8.14 Mб
Скачать

366 Глава 18. Криптографическая защита

Иногда код состоит из списка слов и фраз вместе с соответствующими им случайными группами чисел и букв, называемыми кодовыми группами. Поскольку кодовые группы обычно короче выражений, которые они представляют, коды, помимо секретности, обеспечивают также и сжатие информации.

При правильном использовании коды намного труднее раскрыть, чем другие классические системы. Успех их использования объясняется тремя причинами. Наиболее важной их них является большая длина используемого ключа. В типичной системе шифрования используется ключ длиной максимум несколько сотен бит. Например, ключом шифра на основе простой подстановки является переставленный алфавит, представляющий в среднем 90 бит, тогда как кодовая книга хорошего размера может содержать сотни тысяч и даже миллион бит. Как показал Шеннон, работа криптоаналитика затрудняется, когда из сообщения удаляется избыточность, а коды удаляют избыточность. Причем, коды работают с относительно большими блоками открытого текста (словами и фразами) и, следовательно, скрывают локальную информацию, которая в противном случае могла бы дать ценные “зацепки” для криптоанализа.

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

Кдругим видам криптографического закрытия отнесены рассечение/разнесение и сжатие данных. Рассечение/разнесение данных состоит в том, что массив защищаемых данных рассекается на такие элементы, каждый из которых не позволяет раскрыть содержание защищаемой информации, и выделенные таким образом элементы размещаются в различных зонах памяти. Обратная процедура называется сборкой данных. Совершенно очевидно, что алгоритм разнесения и сборки данных должен сохраняться в тайне.

Шифрование с открытым ключом

Одно из главных ограничений использования обычных криптографических систем связано с трудностью распространения ключей. Диффи и Хеллман, а также, независимо от них, Меркль, показали, что можно исключить защищенный канал передачи ключей и при этом обеспечить защиту при передаче сообщений по незащищенному каналу без осуществления каких-либо предварительных мероприятий. Как видно из рис. 18.6, между отправителем и получателем допускается двухсторонний обмен, но перехватчик здесь пассивный и только слушает. В отличие от обычных систем, в которых ключ должен сохранятся в секрете, системы, допускающие такую работу, называются системами с от-

крытым ключом.

Анализ основных криптографических методов ЗИ 367

Рис. 18.6. Поток информации в криптографической системе с открытым ключом

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

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

Взаимодействуя по открытым каналам связи, абоненты А и В решают следующие задачи:

вначале у А и В нет никакой общей секретной информации, но в конце процедуры такая общая секретная информация (общий ключ) у А и В появляется, т.е. вырабатывается;

противник, который перехватывает все передачи и знает, что хочет получить А и В, тем не менее не может восстановить выработанный общий ключ А и В.

Предложено решать эти задачи с помощью функции F(x) = αx (mod p), где р — большое простое число, x — произвольное натуральное число, α — некоторый примитивный элемент поля G F(p).

Примитивным называется такой элемент α из G F(p), что каждый элемент поля, может быть представлен в виде степени α. Доказывается, что примитивный элемент всегда существует.

Общепризнанно, что инвертирование функции αx (mod p), т.е. дискретное логарифмирование, является трудной математической задачей.

Саму же процедуру или, как принято говорить, протокол выработки общего ключа, можно описать следующим образом.

Числа р и α считаются общедоступными.

368 Глава 18. Криптографическая защита

Абоненты А и В независимо друг от друга случайно выбирают по одному натуральному числу — скажем xA и xB и. Эти элементы они держат в секрете. Далее каждый из них вычисляет новый элемент:

уA = αxA (mod p), уB = αxB (mod p)

Потом они обмениваются этими элементами по каналу связи. Теперь абонент А, получив уB и зная свой секретный элемент xA, вычисляет новый элемент:

уxBA = (αxB)xAA (mod p)

Аналогично поступает абонент В:

уxAB = (αxA)xB (mod p)

Из свойств поля следует, что тем самым у А и В появится общий элемент, который и является общим ключом А и В.

Из описания протокола видно, что противник знает p, α, αxA, αxB, не знает xA, xB и хочет узнать αxAxB. В настоящее время нет алгоритмов действий противника, более эффективных, чем дискретное логарифмирование, а это — труднейшая математическая задача.

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

Криптографическая система с открытым ключом представляет собой пару семейств алгоритмов {EK}K {K} и K}K {K}, определяющих обратимые преобразования

EK:{M}{m} ДK:{M}{m},

на конечном пространстве сообщений {M} со следующими свойствами.

1.Для каждого K {K} ДK обратно к EK , т.е. при любых К и М справедливо ДКЕК(М) = М.

2.Для каждого K {K} и M {M} нетрудно вычислить величины ЕК(М) и ДК(М).

3.Для почти каждого K {K} невозможно в вычислительном отношении вывести из ЕК какой-либо легко выполнимый алгоритм, эквивалентный ДК.

4.По каждому заданному K {K} можно получить инверсную пару ЕК и ДК.

Свойство 3 позволяет не засекречивать ключи шифрования пользователя ЕК и при этом не компроментировать секретность ключа дешифрования ДК. Следовательно, криптогафические системы распадаются на две части (семейство преобразований шифрования и семейство преобразований дешифрования) таким образом, что по данному члену одного семейства невозможно определить соответствующий член другого.

Свойство 4 гарантирует наличие реализуемого пути вычисления соответствующих пар обратных преобразований, когда не наложено никаких ограничений на то, каким должно быть преобразование шифрования или дешифрования. На практике криптогра-