Автор работы: Пользователь скрыл имя, 02 Декабря 2011 в 19:50, курсовая работа
До недавнего времени сеть Интернет использовалась в основном для обработки информации по относительно простым протоколам: электронная почта, передача файлов, удалённый доступ. Сегодня, благодаря широкому распространению технологий WWW, всё активнее применяются средства распределённой обработки мультимедийной информации.
Содержание
Введение
1. Протокол SSL
1.1. Общая информация о протоколе
1.2. Спецификация протокола записей SSL
* Формат заголовка записи SSL
* Формат информационных записей SSL
1.3. Спецификация протокола диалога SSL
* Протокол диалога SSL
* Типовой протокол обмена сообщениями
* Обработка ошибок
* Сообщения протокола диалога SSL
* Протокольные сообщения клиента
* Протокольные сообщения сервера
* Протокольные сообщения клиент/сервер
1.4. Атаки на протокол SSL
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА К КУРСОВОМУ ПРОЕКТУ
по дисциплине:
«Системы
и сети передачи информации»
Тема
проекта «Протокол защищенных каналов
SSL»
ОМСК 2011
Содержание
Введение
1. Протокол SSL
1.1. Общая информация о протоколе
1.2. Спецификация протокола записей SSL
* Формат заголовка записи SSL
* Формат информационных записей SSL
1.3. Спецификация протокола диалога SSL
* Протокол диалога SSL
* Типовой протокол обмена
* Обработка ошибок
* Сообщения протокола диалога SSL
* Протокольные сообщения клиента
* Протокольные сообщения сервера
* Протокольные сообщения клиент/
1.4. Атаки на протокол SSL
Заключение
Условные обозначения и термины
Ресурсы Internet
В
конце шестидесятых годов американское
агентство перспективных
Базовые
механизмы информационного
До недавнего времени сеть Интернет использовалась в основном для обработки информации по относительно простым протоколам: электронная почта, передача файлов, удалённый доступ. Сегодня, благодаря широкому распространению технологий WWW, всё активнее применяются средства распределённой обработки мультимедийной информации. Одновременно с этим растёт объём данных, обрабатываемых в средах клиент/сервер и предназначенных для одновременного коллективного доступа большого числа абонентов. Разработано несколько протоколов прикладного уровня, обеспечивающих информационную безопасность таких приложений, как электронная почта (PEM, PGP и т.п.), WWW (Secure HTTP, SSL и т.п.), сетевое управление (SNMPv2 и т.п.). Однако наличие средств обеспечения безопасности в базовых протоколах семейства TCP/IP позволит осуществлять информационный обмен между широким спектром различных приложений и сервисных служб.
Проблема безопасности в Internet подразделяется на две категории: общая безопасность и вопросы надежности финансовых операций. Успешное разрешение проблем в сфере финансовой деятельности могло бы открыть перед Internet необозримые перспективы по предоставлению услуг для бизнеса. В борьбу за решение этой проблемы включились такие гиганты в области использования кредитных карточек, как MasterCard и Visa, а также лидеры компьютерной индустрии Microsoft и Netscape.
Задача исследований в этой области - решение проблемы конфиденциальности. Рассмотрим для примера передачу сообщений электронной почты с одного SMTP-сервера на другой. В отдельных случаях эти сообщения просто переписываются с одного жесткого диска на другой как обыкновенные текстовые файлы, т. е. прочитать их смогут все желающие. Не важно, содержатся ли в послании какая-то финансовая информация или нет; важно следующее - любая пересылаемая по Internet информация должна быть недоступна для посторонних.
Кроме конфиденциальности пользователей также волнует вопрос гарантий, с кем они сейчас "беседуют". Им необходима уверенность, что сервер Internet, с которым у них сейчас сеанс связи, действительно является тем, за кого себя выдает; будь то сервер World-Wide Web, FTP, IRC или любой другой. Не составляет особого труда имитировать (то ли в шутку, то ли с преступными намерениями) незащищенный сервер и попытаться собрать всю информацию о вас. И, конечно же, поставщики сетевых услуг также хотели бы быть уверенными, что лица, обращающиеся к ним за определенными ресурсами Internet, например, электронной почтой и услугами IRC, действительно те, за кого себя выдают.
В настоящее время наибольшей популярностью пользуются самые простые схемы организации защиты - системы защиты от несанкционированного доступа. Подобные системы достаточно надежны, однако не отличаются особой гибкостью. В них используются самые разные алгоритмы - от разрешения передачи сообщений лишь с заданными адресами сетевого протокола IP до запрета прямого доступа пользователей к ресурсам Internet и интрасетям. Недостаток данной технологии кроется в узости самой постановки задачи: предотвратить доступ посторонним пользователям к внутренним сетям различного уровня. Иногда подобная защита используется для запрета доступа "особо активных" пользователей внутренних сетей, например, корпоративной сети предприятия, ко всем ресурсам Internet, за исключением обычной электронной почты. Фабула данной схемы защиты такова: неприкосновенность внутренней информации и снижение нежелательной нагрузки на внешние каналы.
Однако
пользователи и поставщики услуг Internet
скорее заинтересованы в соблюдении
общей безопасности, а точнее, конфиденциальности
информации отправителя и получателя,
а сервисным службам и пользователям необходима
абсолютная уверенность в том, что на другом
конце канала связи именно тот, кто им
нужен.
1. Протокол SSL
1.1. Общая информация о протоколе
Один из подходов к решению проблемы безопасности в Интернете был предложен компанией Netscape Communications. Ею был разработан протокол SSL (Secure Sockets Layer), как протокол обеспечивающий защиту данных между сервисными протоколами (такими как HTTP, NNTP, FTP и т.д.) и транспортными протоколами (TCP/IP). Часто для него используется аббревиатура HTTPS. Именно эта латинская буква "s" превращает обычный, не защищенный канал передачи данных в Интернете по протоколу HTTP, в засекреченный или защищенный.
Протокол SSL предназначен для решения традиционных задач обеспечения защиты информационного взаимодействия, которые в среде клиент/сервер интерпретируются следующим образом:
Протокол SSL позволяет серверу и клиенту перед началом информационного взаимодействия аутентифицировать друг друга, согласовать алгоритм шифрования и сформировать общие криптографические ключи. С этой целью протокол использует двухключевые криптосистемы, в частности RSA.
Конфиденциальность информации, передаваемой по установленному защищенному соединению, обеспечивается путем шифрования потока данных на сформированном общем ключе с использованием симметричных криптографических алгоритмов (например, RC4_128, RC4_40, RC2_128, RC2_40, DES40 и др.), а контроль целостности передаваемых блоков данных - за счет использования так называемых кодов аутентификации сообщений (Message Autentification Code, MAC), вычисляемых с помощью хеш-функций (в частности, MD5).
Протокол SSL включает в себя два этапа взаимодействия сторон защищаемого соединения:
На этапе установления SSL-сессии осуществляется аутентификация сервера и (опционально) клиента, стороны договариваются об используемых криптографических алгоритмах и формируют общий "секрет", на основе которого создаются общие сеансовые ключи для последующей защиты соединения. Этот этап называют также процедурой "рукопожатия".
На втором этапе (защита потока данных) информационные сообщения прикладного уровня нарезаются на блоки, для каждого блока вычисляется код аутентификации сообщений, затем данные шифруются и отправляются приемной стороне. Приемная сторона производит обратные действия: дешифрование, проверку кода аутентификации сообщения, сборку сообщений, передачу на прикладной уровень.
Преимуществом SSL является то, что он независим от прикладного протокола. Протоколы приложения, такие как HTTP, FTP, TELNET и т.д. могут работать поверх протокола SSL совершенно прозрачно. Протокол SSL может согласовывать алгоритм шифрования и ключ сессии, а также аутентифицировать сервер до того как приложение примет или передаст первый байт данных. Все протокольные прикладные данные передаются зашифрованными с гарантией конфиденциальности.
Протокол SSL предоставляет "безопасный канал", который имеет три основные свойства:
1.2. Спецификация протокола записей SSL
* Формат заголовка записи SSL
В SSL все данные пересылаются в виде рекордов (записей), объектов, которые состоят из заголовка и некоторого количества данных. Каждый заголовок рекорда содержит два или три байта кода длины. Если старший бит в первом байте кода длины рекорда равен 1, тогда рекорд не имеет заполнителя и полная длина заголовка равна 2 байтам, в противном случае рекорд содержит заполнитель и полная длина заголовка равна 3 байтам. Передача всегда начинается с заголовка.
Заметим,
что в случае длинного заголовка
(3 байта), второй по старшинству бит
первого байта имеет
Код
длины рекорда не включает в себя
число байт заголовка (2 или 3). Для 2-байтового
заголовка его длина
RECORLENGTH = ((byte[0] & 0x7F << 8)) | byte[1];
Где byte[0] представляет собой первый полученный байт, а byte[1] – второй полученный байт. Когда используется 3-байтовый заголовок, длина рекорда вычисляется следующим образом: