Лекции 2010-го года (1130544), страница 90
Текст из файла (страница 90)
Этот протокол не предполагает, что пользователь работает все время с одной и тойже почтовой службой. Пользователь может обратиться к серверу и забрать почту на своюлокальную машину, после чего разорвать соединение. Обработав почту, он может ееотправить позже, когда будет установлено очередное соединение.Важными почтовыми сервисами являются:• Фильтры• Пересылка поступающей почты на другие адреса• Демон отсутствия• Почтовый робот (программа, анализирующая входящие письма и отвечающая наних)7.4.5. Конфиденциальность почтыПославший почту, естественно, предполагает, что ее никто не читает кроме адресата.Однако если об этом специально не позаботиться, то гарантировать этого нельзя.
Далеемы рассмотрим две широко распространенных безопасных почтовых системы - PGP иPEM.7.4.5.1. PGP – Pretty Good PrivacyPGP – дословно: «вполне хорошая конфиденциальность» – разработка одного человека Фила Зиммермана (Phil Zimmermann, 1995). Это полный пакет безопасности, которыйвключает средства конфиденциальности, установления подлинности, электроннойподписи, сжатия, и все это в удобной для использования форме. Благодаря тому, что эторазработка далекого от государственных структур человека, качественная, работает как наплатформе Unix, так и MS-DOS/Windows, Macintosh и распространяется бесплатно, онаполучила очень широкое распространение.Зиммерман был обвинен в нарушении ряда законов США о шифровании.
Дело в том, чтов США действует закон, запрещающий экспорт военной амуниции. Системы и алгоритмышифрования подпадают под действие этого закона. Филл передал свою разработкуприятелю из Швейцарии, а тот выложил ее в Интернет. Полученный в этом инцидентеопыт он сформулировал в виде лозунга «Если конфиденциальность - вне закона, то онадоступна только тем, кто вне закона».PGP использует алгоритмы шифрования RSA, IDEA и MD5. PGP поддерживаеткомпрессию передаваемых данных их секретность, электронную подпись и средствауправления доступом к ключам.
Схема работы PGP показана на рисунке 7-56. На этомрисунке DA, DB - личные (закрытые) ключи А и В соответственно, а EA, EB – ихоткрытые ключи. Отметим, что секретный ключ для IDEA строится автоматически в ходеработы PGP на стороне А и называется ключом сессии - KM, который затем шифруетсяалгоритмом RSA с открытым ключом пользователя В.
Также следует обратить вниманиена то, что медленный алгоритм RSA используется для шифрования коротких фрагментовтекста: 128-разрядного ключа для MD5 и 128-разрядного ключа для IDEA.Рисунок 7-56. Действия PGP при отправке сообщенияPGP поддерживает три длины ключей:• Обычный – 314 бит (может быть раскрыт за счет больших затрат).• Коммерческий – 512 бит (может быть раскрыт специализированнымиорганизациями, названия которых, как правило, состоят из трех букв, например,ЦРУ, АНБ, ФСБ, МВД, ФБР).• Военный – 1024 бита (не может быть раскрыт пока никем на Земле).Формат PGP-сообщения показан на рисунке 7-57.Рисунок 7-57. Формат PGP-сообщения7.4.5.2. PEM – почтовая служба с повышенной конфиденциальностьюPEM имеет статус Internet-стандарта (RFC 1421, 1424).
Сообщения, пересылаемые спомощью PEM, сначала преобразуются в каноническую форму. В этой форме соблюденысоглашения относительно спецсимволов типа табуляции, последовательных пробелов ит.п. Затем сообщение обрабатывается MD5 или MD2, шифруется с помощью DES (56разрядный ключ) и передается с помощью кодировки base64. Передаваемый ключзащищается либо с помощью RSA, либо с помощью DES по схеме EDE.В таблице 7-58 дано сравнение почтовой системы PEM и PGM.Таблица 7-58. Сравнение PGM и PEMПризнакPGPPEMПоддерживает шифрование?ДаДаПоддерживает аутентификацию?ДаДаПоддерживает невозможность отказа отавторства?ДаДаПоддерживает сжатие?ДаНетПоддерживает канонизацию (приведение кстандартному имени)?НетДаПоддерживает список рассылки?НетДаИспользует кодировку base64?ДаДаАлгоритм шифрования текущих данныхIDEADESДлина ключа для шифрования данных (бит) 12856Алгоритм управления ключомRSARSA или DESДлина ключа для управления ключом (бит)384/512/1024ВарьируетсяМесто имени пользователяОпределяетсяпользователемX.400Согласован с X.509?НетДаНужно ли доверять кому-либо?НетДа (IPRA)Сертификация ключейЗависит отконкретного случаяИерархияIPRA/PCA/CAОтзыв ключаБессистемныйЛучшийВозможен ли перехват сообщения?НетНетВозможен ли перехват подписи?НетДаЯвляется ли интернет-стандартом?НетДаКем разработан?Небольшой командой Комитетом постандартизации7.5.
Протокол передачи файлов - FTPFTP (File Transfer Protocol, Протокол передачи данных) - это один из первых и все ещешироко используемых интернет-сервисов. Первые спецификации FTP относятся к 1971году. С тех пор FTP претерпел множество модификаций и значительно расширил своивозможности.Протокол FTP предназначен для решения следующих задач:• разделение доступа к файлам на удаленных абонентских машинах• прямое или косвенное использования ресурсов удаленных компьютеров• обеспечение независимости клиента от файловых систем удаленных абонентскихмашин• эффективная и надежная передача данныхFTP - это протокол прикладного уровня, который, как правило, использует в качестветранспортного протокола TCP.
FTP не может использоваться для передачиконфиденциальных данных, поскольку не обеспечивает защиты передаваемойинформации и передает между сервером и клиентом открытый текст. FTP-сервер можетпотребовать от FTP-клиента аутентификации (т.е. при подсоединении к серверу FTPпользователь должен будет ввести свой идентификатор и пароль). Однако и пароль, иидентификатор пользователь будут переданы от клиента на сервер открытым текстом.7.5.1.
Модель работы FTPПростейшая модель работы протокола FTP представлена на рисунке 7-59, где введеныследующие обозначения:• «User Interface» - пользовательский интерфейс работы с FTP.• «User-PI» - интерпретатор команд пользователя (User Protocol Interpretator). Этотобъект взаимодействует с «Server-PI», чтобы обмениваться командамиуправления передачей данных по каналу передачи команд и с «User-DTP» модулем, который осуществляет непосредственную передачу данных по каналупередачи данных.• «User-DTP» - модуль, осуществляющий обмен данными (User Data Transfer Process)между клиентом и сервером FTP по каналу передачи данных на основаниикоманд модуля «User-PI». Этот объект взаимодействует с файловой системойпользователя и объектом «Server-DTP».• «Server-PI» - модуль управления обменом данных со стороны сервера (ServerProtocol Interpretator) по каналу передачи команд.• «Server-DTP» - модуль, осуществляющий обмен данными со стороны сервера(Server Data Transfer Process) по каналу передачи данных• «Сервер FTP» - модуль, осуществляющий работу FTP-сервера.
Он состоит измодуля управления передачей - «Server-PI» и модуля, осуществляющегопередачу, - «Server-DTP».• «Пользователь FTP» - модуль клиента FTP. Он состоит из модуля управленияпередачей - «User-PI» - и модуля, осуществляющего передачу - «User-DTP».Рисунок 7-59. Модель работы протокола FTPFTP поддерживает сразу два канала соединения - канал передачи команд (и статусов ихобработки) и канал передачи данных. Канал передачи данных может использоваться дляпередачи как в одном, так и в другом направлении, кроме того, он может закрываться иоткрываться по командам управляющих модулей в процессе работы.
Канал передачикоманд открывается с установлением соединения и используется только для передачикоманд и ответов их обработки.Алгоритм работы протокола FTP состоит в следующем:1.Сервер FTP использует в качестве управляющего соединение на TCP порт 21,который всегда находится в состоянии ожидания соединения со стороны FTPклиента.2.После того как устанавливается управляющее соединение модуля «User-PI» смодулем сервера - «Server-PI», клиент может отправлять на сервер команды. FTPкоманды определяют параметры соединения передачи: роли участников соединения(активный или пассивный), порт соединения (как для «User-DTP», так и для «ServerDTP»), тип передачи, тип передаваемых данных, структуру данных и управляющиедирективы, обозначающие действия, которые пользователь хочет совершить,например, сохранить, считать, добавить или удалить данные или файл.3.После того как согласованы все параметры канала передачи данных, один изучастников соединения, который является пассивным (например, клиентскиймодуль «User-DTP»), становится в режим ожидания открытия соединения назаданный для передачи данных порт.