INTERNET-WEB.RU
Обучение работе с ПК
Операционные системы
Флеш (Flash)

Как передать пароль? схема двух ключей

При использовании Интернета основная проблема заключается в безопасной передаче такого первичного пароля. Как можно осуществить безопасное получение пароля обоими участниками процесса? Конечно, можно рассылать пароли по запросу спецпочтой, но это далеко не самый удобный и быстрый способ. Если использовать открытые каналы связи для передачи информации, то всегда существует вероятность, что кто-то сможет «расположиться» между участниками и, перехватывая весь трафик, соответствующим образом его модифицировать. Так, если пользователь А пошлет пользователю Б свой пароль, то злоумышленник (назовем его С) может перехватить его и заменить на свой. В дальнейшем пользователь С будет дешифровывать сообщения А, используя его пароль, и пересылать новые данные пользователю Б, зашифровывая их уже своим паролем (но выдавая его за пароль А). Выявить данный перехват в глобальной сети невозможно.

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

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


Схема двух ключей прекрасно работает для обеспечения безопасной передачи информации между двумя пользователями, если только быть уверенным в том, что они имеют реальные, а не фиктивные открытые ключи другого «участника разговора». Как пользователь А может быть уверенным в том, что он получает сообщение от пользователя Б с его ключом, а не с ключом, который «подменил» некто по пути передачи данных? Ведь если злоумышленник С сможет выдать (для пользователя Б) свой открытый ключ за открытый ключ пользователя А, то он будет иметь возможность перехватывать сообщения для пользователя А, дешифровывать их и, изменив должным образом, отправлять их пользователю А, зашифровывая уже своим секретным ключом. Выход из такой ситуации был найден следующий: один из участников обмена данными должен иметь некое «удостоверение», которому оба участника будут доверять. Таким «документом» стали цифровые сертификаты.

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

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

© 2009 internet-web.ru. All Rights Reserved