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

Криптосистемы с открытым ключом

Алгоритмы шифрования с открытым ключом зависят от одного ключа для шифрования и другого, связанного с первым, ключа для дешифрования. Эти ал­горитмы имеют следующую важную особенность.

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

Кроме того, некоторые алгоритмы (например, RSA) имеют следующее свойство.

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

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

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

3. Если пользователь А собирается послать сообщение пользователю В, он шифрует сообщение, используя открытый ключ пользователя В.

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

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

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

Таблица 6.1. Традиционное шифрование и шифрование с открытым ключом

Традиционное шифрование

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

Необходимо для работы

1. Один алгоритм с одним и тем же ключом . служит и для шифрова­ния, и для дешифрования

2. Отправитель и получатель долж­ны использовать . одинаковые ал­горитм и ключ

Необходимо для защиты

1. Ключ должен сохраняться в секрете

2. Должно быть невозможно или, по крайней мере, . практически не­возможно расшифровать сообще- . ние при отсутствии дополнитель­ной информации

3. Знания алгоритма и наличия об­разцов . шифрованного текста должно быть едостаточно . для то­го, чтобы восстановить ключ

Необходимо для работы

1. И для шифрования, и для дешифрования . используется один алгоритм, но два ключа: . один ключ для шифрования, а другой — для . дешифрования

2. Отправитель и получатель должны иметь по . . одному из пары соответствующих ключей (не . один и тот же)

Необходимо для защиты

1. Один из двух ключей должен храниться в екрете

2. Должно быть невозможно или, по крайней мере, . практически невозможно расшифро­вать . сообщение при отсутствии дополни­тельной . информации

3. Знания алгоритма и одного из ключей и на­личия . образцов шифрованного текста должно быть . недостаточно для того, чтобы восстановить . второй ключ

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

Обеспечение аутентификации – разработка методов подтверждения подлинности сторон и самой информации в процессе информационного взаимодействия.

Давайте рассмотрим основные элементы схемы шифрования с открытым клю­чом более подробно. Итак, име­ется некоторый источник сообщений А, создающий сообщение X= [X1, Х3,..., Хм] в виде открытого текста. Все М элементовXявляются буквами некоторого конеч­ного алфавита. Сообщение адресовано получателю В. Адресат В генерирует свя­занную пару ключей: открытый ключKUbи личный ключKRb. КлючKRbоста­ется известным только пользователю В, тогда как ключKUbпублично доступен и, таким образом, оказывается доступным отправителю А.

Имея сообщение Xи ключ шифрованияKUbв качестве входных данных, отпра­витель А формирует шифрованный текстY= [Y1,Y2,...,YN] следующим образом:

Y= ЕKUb(Х).

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

X-DKRb(Y).

Противник, наблюдая Yи имея доступ кKUb, но не кKRbилиX, должен будет пытаться восстановитьXи/илиKRb. Предполагается, что противник зна­ет алгоритмы шифрования (Е) и дешифрования (D). Если противника интересует только данное конкретное сообщение, то он сосредоточит свои усилия на восста­новленииXс помощью получения оценокXдля открытого текста. Но часто противник бывает заинтересован в возможности чтения и последующих сообще­ний. В таком случае будет предпринята попытка восстановить ключKRbпутем генерирования для него оценкиKRb.

X^

Криптоаналитик

Адресат В

Источник А

K^Ra

.

Рис. 6.2. Криптосистема с открытым ключом: защита

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

Y = EKRа(X),

X = DKUa(Y).

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

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

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

Однако, можно обеспечить как аутентификацию, так и конфиденциальность повторным использованием схемы шифрования с открытым ключом

Z = EKUb[EKRa(X)].

X = EKUа[EKRb(Z)].

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

Криптоаналитик

Источник А

K^Ra

Адресат В

Рас. 6.3. Криптосистема с открытым ключом: аутентификация

Симметричные криптосистемы.

Соседние файлы в папке Другие сети от другого Малова