Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Решенные билеты.doc
Скачиваний:
99
Добавлен:
26.05.2014
Размер:
1.72 Mб
Скачать

Вопрос 16 Распределение открытых ключей

Основное отличие распределения открытых ключей от распределения ключей для криптосистем с секретным ключом состоит в том, что передаваемые ключи не надо прятать, но зато их надо защищать от подделки. Для этого открытые ключи передаются вместе с сертификатами подлинности.

Сертификат открытого ключа А создается участником X и имеет вид

где SX — цифровая подпись X, a kA — открытый ключ А.

Чтобы можно было доверять сертификату СХА, требуются две не зависящие друг от друга вещи:

  • уверенность в том, что ключ, с помощью которого создана цифровая подпись, действительно принадлежит участнику X. Такая уверенность может, в свою очередь, основываться на другом сертификате CYX;

  • доверие по отношению к участнику X, т. е. уверенность в том, что X по злому умыслу или по ошибке не подпишет поддельный ключ.

Имеется несколько схем использования сертификатов.

  • Централизованная схема применяется при организации защищенного WWW-обмена с помощью протокола SSL в продуктах Microsoft и Netscape. При этом выделяется несколько специальных участников, называемых Certification Authority. Открытый ключ любого другого участника должен быть подписан одним из выделенных участников.

  • Иерархическая схема применяется в системе защищенной электронной почты РЕМ. Участники образуют дерево, причем каждый из них доверяет подписывать ключи всем своим предкам в дереве и сам подписывает ключи своих непосредственных потомков.

  • «Демократическая» схема применяется в программе pgp. Все участники равноправны, и каждый может подписать ключ любого участника. Предлагается доверять ключу участника А, если существует цепочка сертификатов

При этом следует быть уверенным в ключе Х0 и доверять всем Хi- подписывать ключи. Для перестраховки длина цепочки не должна превышать некоторого небольшого значения, например 3.

Интересное применение можно найти для сертификата вида

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

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

Вопрос 17 Построение криптографически стойких хэш-функций

К используемой для аутентификации не зависящей от ключа хэш-функции h:MA предъявляются следующие требования по криптографической стойкости:

  • Стойкость к нахождению прообраза: для любого значения у должно быть невозможно подобрать прообраз x такой, что h(x)=y.

  • Стойкость к нахождению второго прообраза: для любого сообщения х должно быть невозможно подобрать х' такое, что h(x}=h(х').

  • Стойкость к нахождению коллизий: должно быть невозможно подобрать сообщения х и х' такие, что h (х)=h (х').

Криптографически стойкую хэш-функцию можно пытаться строить с использованием алгоритма шифрования. Основная идея состоит в том, что если Ekфункция шифрования, стойкая к атакам с известным сообщением, то h(x) = Ex(c),c=const, —хэш-функция, стойкая к нахождению прообраза.

Для сообщений, состоящих из нескольких блоков, предложены различные итеративные схемы, среди которых:

  • схема Дэвиса — Мейера (Davies Meyer)

  • схема Миягучи (Miyaguchi)

  • модифицированная схема Дэвиса — Мейера (Xuejia Lai и James Massey) для алгоритма шифрования IDEA, в котором секретный ключ в 2 раза длиннее блока

  • если ключ в 2 раза длиннее блока, можно удвоить длину хэш-суммы с помощью тандемной схемы Дэвиса— Мейера (Xuejia Lai и James Massey):

где

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

Функция MD5 (Message Digest 5, Ronald L. Rivest и Steve Dusse, RSA Data Security, 1991) широко используется в приложениях Internet. Длина результата 128 бит. Каждая итерация алгоритма состоит из 64 операций. Недавно обнаружена нестойкость к нахождению коллизий, но пока не построена настоящая атака на эту функцию.

Функция SHA (Secure Hash Algorithm, NIST, NSA) предложена в качестве национального стандарта США. Длина результата 160 бит. Каждая итерация алгоритма состоит из 80 операций.

Обе функции имеют в качестве внутреннего состояния несколько (в MD5 — 4, в SHA — 5) 32-битовых переменных. На каждом шаге значения переменных в определенном порядке меняются местами, циклически сдвигаются и складываются по модулю 232 друг с другом и с результатом вычисления нелинейных относительно сложения функций от этих переменных. Нелинейные функции строятся с использованием побитовых операций — отрицания, дизъюнкции и суммы по модулю 2 (операция ).В настоящее время многие специалисты считают наиболее надежной хэш-функцией SHA.[1]

Соседние файлы в предмете Криптография