Оценка и сравнение защищённости протоколов передачи мгновенных сообщений

Заказать уникальную курсовую работу
Тип работы: Курсовая работа
Предмет: Сети и системы связи
  • 39 39 страниц
  • 21 + 21 источник
  • Добавлена 29.05.2020
1 496 руб.
  • Содержание
  • Часть работы
  • Список литературы
  • Вопросы/Ответы
ВВЕДЕНИЕ……………………………………………………………………. 3
ГЛАВА 1. АНАЛИЗ СИСТЕМ ПЕРЕДАЧИ МГНОВЕННЫХ СООБЩЕНИЙ ........................................................................................................
5
1.1. Сравнительный анализ протоколов передачи мгновенных сообщений…………………………………………………………………..
7
1.2. Анализ архитектуры построения системы обмена мгновенными сообщениями ………………………………………………………………
18
1.3. Анализ программной архитектуры построения системы обмена мгновенными сообщениями…………………………………………………..
22
ГЛАВА 2. РАЗРАБОТКА ПРОГРАММЫ КОЛЛЕКТИВНОГО ОБМЕНА СООБЩЕНИЯМИ С ИСПОЛЬЗОВАНИЕМ ПРОТОКОЛОВ ПЕРЕДАЧИ МГНОВЕННЫХ СООБЩЕНИЙ … …………..……………………….........

25
2.1. Структура программы коллективного обмена сообщениями ………..... 25
2.2. Описание способа организации защиты для каждого из сравниваемых протоколов…………………………………………………………....…...….
26
2.3. Контрольный пример реализации …………………………………….. 29
Список используемых источников……………………………………. 37
Заключение……………………………………………………………….. 39
Фрагмент для ознакомления

Уровень каркаса приложений обеспечивает возможность установленным приложениям получать доступ к ресурсам других приложений. Самым верхнем уровнем является уровень предустановленных приложений. Именно на данном уровне пользователь взаимодействует с программами передачи мгновенных сообщений. ГЛАВА 2. РАЗРАБОТКА ПРОГРАММЫ КОЛЛЕКТИВНОГО ОБМЕНА СООБЩЕНИЯМИС ИСПОЛЬЗОВАНИЕМ ПРОТОКОЛОВ ПЕРЕДАЧИ МГНОВЕННЫХ СООБЩЕНИЙ2.1. Структура программы коллективного обмена сообщениями.Высокая популярность рассмотренных систем обмена сообщениями приводит к повышению актуальности вопросов обеспечения их информационной безопасности. При этом оценка защищенности программ является очень важной как для производителя этих систем так для пользователя.Программа должны состоять из серверной и клиентской частиРассмотрим вариант отправки сообщения.Используя один multicast адрес, будем отправлять сообщения всем абонентам с указанием имени топика. Абоненты должны фильтровать данные согласно индивидуальному набору подписок.Определим содержание UDP пакета:Имя топика;Данные.Алгоритм получателя сообщения можно описать следующим образом:Подключитсяк multicast группе:Получить сообщение;Если топик сообщения не в списке интересующих, перейти на пункт 2;Обработать сообщение;Вернуться на пункт 2.Работа отправителя сообщения состоит из двух итераций:Добавить к сообщению имя топика;Отправить на multicast адрес сообщение.2.2. Описание способа организации защиты для каждого из сравниваемых протоколов. Защита информации от утечки по акустическому каналу – комплекс мероприятий, исключающих или уменьшающих возможность выхода конфиденциальной информации за пределы контролируемой зоны за счет акустических полей.Основными мероприятиями в этом виде защиты представлены на рисунке 2.3 выступают организационные и технические меры. Рисунок 2.3 – Классификация мероприятий защиты информации от утечки по акустическим каналам .Из-за того, что в настоящее время используется большое количество алгоритмов шифрования необходимо оценить их криптостойкость. При этом следует учесть, что надежность шифрования определяется:– используемым стандартом шифрования;– тип шифрования (блочное, поточное).Еще одним критерием может выступить наличие системы идентификации пользователей.В результате анализа рассматриваемых систем мгновенной передачи сообщений была сформирована таблица с оценкой соответствия альтернатив заданным критериям (таблица 1.1)Таблица 1.1Результаты анализа систем передачи мгновенных сообщенийНаименование системы передачи Где хранятся ключиПротокол шифрованияНаличие системы идентификации пользователяYahoo! MessengerСерверAES-256Имя чата, логинCryptoCatСерверOff-The-RecordИмя чата, логинSignalУстройство пользователяSignalТелефонный номерSkypeСерверAES-256логинTelegramУстройство пользователяMTProtoТелефонный номер, логинViber,Устройство пользователяУрезанный SignalТелефонный номерWhatsAppУстройство пользователяSignalТелефонный номерИсходя из анализа, представленных в таблице 1.1 характеристик систем мгновенной передачи сообщений, а также с учетом данных изложенных в первом разделе, было установлено, что наиболее безопасным мессенджером является Signal. Далее идет CryptoCat, и WhatsApp.В тоже время, при пользовании любыми программными продуктами по передаче мгновенных сообщений следует выполнять следующие рекомендации:не следует передавать конфиденциальную или частную информацию по каналам так как она может быть перехвачена, дешифрована и использована против абонента;не стоит открывать файлы, которые получены от неизвестных пользователей, так как они могут содержать вредоносную программу, применение которой приведет не только к нарушению работоспособности мобильного устройства пользователя, но и может служить прямым каналом для распространения переписки и аудио- видео записей. не давайте телефон или компьютер посторонним лицам, даже если вы уверены в них;установите пароль на телефоне, и никому не сообщайте его;в настройках мессенджера следует установить двойной код доступа;следует скрывать свой номер телефона на главной странице профиля используемого приложения по передаче мгновенных сообщений и предоставлять доступ к этой информации только для сохраненных контактов;всегда завершайте начатые сеансы и выходите из своего профиля;используйте самоуничтожающиеся и секретные чаты;установите ограничения на предоставление доступа к информации, когда вы были в сети последний раз.Применение указанных мер позволит защитить пользователя мобильного приложения от утечки персональных данных и конфиденциальной информации. 2.3 Контрольный пример реализации.Структура будущего приложения выглядит примерно так:Рисунок 2.4 – Структура разрабатываемого программного обеспеченияРазработка подпрограммы работы серверной частиШаг 1Переходим в каталог Server и выполняем команду запуска нового проектаnpminit:Указываем все необходимые сведения. В результате будет создан файл package.json примерно следующего вида:{ "name": "chat", "version": "1.0.0", "description": "Chat application", "main": "server.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "author": "Your name", "license": "ISC"}Шаг 2. Устанавливаемтребуемые подключения к библиотекам:socket.io — JavaScript-библиотека, которая предоставляет двустороннюю связь клиента и сервера в режиме реального времени;express — фреймворк Node.js, предоставляющий набор функций для разработки мобильных и веб-приложений. Позволяет отвечать на HTTPS-запросы, используя промежуточное ПО, а также отображать HTML-страницы.Выполнение этих команд установит необходимые зависимости и добавит их в package.json:npm install --save socket.ionpm install --save expressВыглядеть они будут примерно так:"dependencies": { "express": "^4.14.0", "socket.io": "^1.4.8"}Шаг 3. Создаем сервер, который обслуживает порт 3000 и возвращает HTML-файл при вызове. Для инициализации нового соединения сокету нужно передать HTTPS-объект. Событие connection будет прослушивать входящие сокеты, каждый сокет будет выпускать событие disconnect, которое будет вызвано при отключении клиента. Мы будем использовать следующие функции:socket.on(...) — ожидает событие, и когда оно происходит, то выполняет функцию обратного вызова.io.emit(...) — используется для отправки сообщения всем подключенным сокетам.Синтаксис следующий:socket.on('event', function(msg){})io.emit('event', 'message')Создаем сервер с именем server.js. Он долженвыводить сообщение в консоль при подключении пользователя. Просматривать событие chatmessageи транслировать полученное сообщение на все подключенные сокеты. При отключении пользователя выводить сообщение в консоль.В результате сервер будет выглядеть примерно так:var app = require('express')();var http = require('http').Server(app);var io = require('socket.io')(http);app.get('/', function(req, res){res.sendfile('index.html');});io.on('connection', function(socket){console.log('user connected'); socket.on('chat message', function(msg){ io.emit('chat message', msg); }); socket.on('disconnect', function(){ console.log('user disconnected'); });});http.listen(3000, function(){ console.log('listening on *:3000');});Разработка подпрограммы клиентского приложенияСоздайте файлы index.html в каталоге Client, style.css в каталоге CSS и app.js в каталоге js.Client/index.htmlПусть это будет простой HTML-код, который получает и отображает наши сообщения.Митап JS Evening29 апреля в 19:00, беcплатноВключаем скрипты socket.io-client и angular.js в ваш HTML:<script src="/path/to/angular.x56775.js"></script><script src="/socket.io/socket.io.x56775.js"></script>socket.io служит для нас клиентом. Он по умолчанию подключается к хосту, обслуживающему страницу.В результате index.html должен выглядеть примерно так: Socket.IO chat <link rel="stylesheet" href="/css/style.x56775.css"> <script src="/lib/angular/angular.x56775.js"></script> <script src="/socket.io/socket.io.x56775.js"></script> <script src="http://code.jquery.com/jquery-1.11.1.js"></script> <script src="/js/app.x56775.js"></script>

    CSS/style.cssЧтобы придать нашей странице внешний вид окна чата, добавим немного стилей. Получим следующее:* { margin: 0; padding: 0; box-sizing: border-box; }body { font: 13px Helvetica, Arial;}div { background: #000; padding: 3px; position: fixed; bottom: 0; width: 100%; }div input { border: 0; padding: 10px; width: 90%; margin-right: .5%; }div button { width: 9%; background: rgb(130, 224, 255); border: none; padding: 10px; }#messages { list-style-type: none; margin: 0; padding: 0; }#messages li { padding: 5px 10px; }#messages li:nth-child(odd) { background: #eee; }js/app.js:Создаем Angular-приложение и инициализируйте соединение сокета. Для этого нужны следующие функции:socket.on(...) — слушает определенное событие, и, когда оно происходит, выполняет функцию обратного вызова.socket.emit(...) — используется для отправки сообщения конкретному событию.Синтаксис следующий:socket.on('event name', function(msg){});socket.emit('event name', message);Теперь, когда будет набран текст сообщения и нажата кнопка, вызовите функцию отправки сообщения. Когда сокет получит сообщение, отобразите его.В результате app.js будет выглядеть примерно так:var app=angular.module('myApp',[]);app.controller('mainController',['$scope',function($scope){var socket = io.connect(); $scope.send = function(){ socket.emit('chat message', $scope.message); $scope.message=""; } socket.on('chat message', function(msg){ var li=document.createElement("li"); li.appendChild(document.createTextNode(msg)); document.getElementById("messages").appendChild(li);});}]);Для запуска приложения переходим в папку с server.js и запускаем команду:node server.jsСервер начнет работу на порте 3000. Можно создать базу данных для хранения информации о пользователях и истории сообщений. Лучше, если она будет масштабируемой, потому что в дальнейшем это позволит добавить больше функций.Установите Mongoose или MongoDB для работы с базами данных Mongo:npm install --save mongooseСхема должна получиться примерно следующего вида:{ "_id" : ObjectId("5809171b71e640556be904ef"), "name" : "Monkey proger", "handle" : "mkproger", "password" : "proger228", "phone" : "8888888888", "email" : "dontwritemepleez@gmail.com", "friends" : [ { "name" : "habrick", "status" : "Friend" }, { "name" : "javaman","status" : "Friend" } ], "__v" : 0}Структура окна входа в разработанный защищенный мессенджер представлена на рисунке 2.5Рисунок 2.5 – Внешний вид окна входа в разрабатываемый мессенджер Рисунок 2.5 – Внешний вид главного окна разработанной программыСПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВАнин Б.Ю. Защита компьютерной информации / Б.Ю. Анин. — СПб.: БХВ – Петербург, 2000. 384 с.Вишневский В.М. Широкополосные беспроводные сети передачи информации / В.М. Вишневский, А.И. Ляхов, СЛ. Портной, И.Л. Шахович. М.: Техносфера, 2005. - 592 с.Владимиров A.A. Wi-Fi: «боевые» приемы взлома и защиты беспроводных сетей / A.A. Владимиров, К.В. Гавриленко, A.A. Михайловский — М: НТ Пресс, 2005.-464 с.Внукова, З.А. Оценка безопасности систем мгновенного обмена сообщений методом анализа иерархий //Научные ведомости №23 – 2016.Гольдштейн, Б. Протоколы сети доступа. Т.2 / Б. Гольдштейн. - СПб.: BHV, 2005. - 288 c.Зегжда Д.П. Основы безопасности информационных систем / Д.П. Зегжда, A.M. Ивашко. М.: Горячая линия - Телеком, 2000. - 452 с.Иванов М.А. Криптографические методы защиты информации в компьютерных системах и сетях. / М.А. Иванов. – М.: КУДИЦ-ОБРАЗ, 2001.-368 с.Корячко, В.П. Корпоративные сети: технологии, протоколы, алгоритмы / В.П. Корячко, Д.А. Перепелкин. - М.: Гор. линия-Телеком, 2013. - 219 c.Максим М. Безопасность беспроводных сетей / М. Максим, Д. Поллино — М.: ДМК-Пресс, 2004. 288с.Никонов В.И. Методы защиты информации в распределенных компьютерных сетях с помощью алгоритмов маршрутизации / В.И. Никонов // Доклады ТУСУР. 2010. - № 1 (21) , ч.2 - с. 219-224.Олифер, В.Г. Компьютерные сети. Принципы, технологии, протоколы: Учебник для вузов. Стандарт третьего поколения / В.Г. Олифер, Н.А. Олифер.. - СПб.: Питер, 2013. - 944 c;Описание мессенджера Cryptocat[Электронный ресурс] URL: https://ru.wikipedia.org/wiki/Cryptocat (дата обращения 02.04.2020).Описание мессенджера Telegram [Электронный ресурс] URL: https://ru.wikipedia.org/wiki/Telegram (дата обращения 06.04.2020).Описание мессенджера WhatsApp[Электронный ресурс] URL: https://ru.wikipedia.org/wiki/WhatsApp (дата обращения 06.04.2020).Описание мессенджера Viber [Электронный ресурс] URL: https://ru.wikipedia.org/wiki/Viber (дата обращения 03.04.2020).Панасенко С.П. Алгоритмы шифрования. Специальный справочник / С.П. Панасенко СПб.: БХВ-Петербург, 2009. - 576 с.Романец Ю.В. Защита информации в компьютерных системах и сетях / Ю.В. Романец, П.А. Тимофеев, В.Ф. Шаньгин — М.: Радио и связь, 2001. – 376с.Сверхзащищенный мессенджер Signal «тайно» сохраняет историю и ключи шифрования открытым текстом [Электронный ресурс] URL: https://habr.com/ru/post/427637/ (дата обращения 02.04.2020).VoIP-сервис Skype [Электронный ресурс] URL: https://webznam.ru/blog/voip_servis_skype/2019-06-04-1112(дата обращения 04.04.2020).Эволюция мессенджеров – короткая история индустрии сообщений за прошедшие 40 лет. [Электронный ресурс] URL: https://itcrumbs.ru/istoriya-evolyutsiya-messendzherov_23557 (дата обращения 02.04.2020).Шаньгин В.Ф. Защита компьютерной информации. Эффективные методы и средства / В.Ф. Шаньгин М.: ДМК-Пресс, 2008. - 544с.ЗАКЛЮЧЕНИЕВ ходе курсовой работы были поставлены и решены следующие задачи:С целью определения приложения по безопасной передаче мгновенных сообщений осуществлена декомпозиция задачи. В результате декомпозиции определяем три уровня:Верхний уровень – уровень цели. Цель работы выбрать наиболее безопасный протокол передачи мгновенных сообщений. Средний уровень связан с выбором показателя и критерия оценки. На данном уровне целесообразно рассмотреть используемые методы шифрования данных.Нижний уровень список альтернатив. В качестве альтернативных решений рассмотрим популярные мессенджеры Yahoo! Messenger, CryptoCat, Signal, Skype, Telegram, Viber, WhatsApp.Данные протоколы отличаются алгоритмами шифрования данных и протоколами передачи сообщений. Основными угрозами являются перехват акустической информации, перехват видовой информации, перехват содержания передаваемых сообщений, угрозы блокирования информации, угрозы выявления паролей, угрозы внедрения вредоносных программ.В ходе оценки защищенности выбранных протоколов было доказано, что наиболее защищенным является протокол Signal. В качестве примера реализации защищённого протокола разработана программа коллективного обмена сообщениями использование которой позволят повысить защиту пользователя от перехвата в групповом чате.

    1. Анин Б.Ю. Защита компьютерной информации / Б.Ю. Анин. — СПб.: БХВ – Петербург, 2000. 384 с.
    2. Вишневский В.М. Широкополосные беспроводные сети передачи информации / В.М. Вишневский, А.И. Ляхов, СЛ. Портной, И.Л. Шахович. М.: Техносфера, 2005. - 592 с.
    3. Владимиров A.A. Wi-Fi: «боевые» приемы взлома и защиты беспроводных сетей / A.A. Владимиров, К.В. Гавриленко, A.A. Михайловский — М: НТ Пресс, 2005.-464 с.
    4. Внукова, З.А. Оценка безопасности систем мгновенного обмена сообщений методом анализа иерархий //Научные ведомости №23 – 2016.
    5. Гольдштейн, Б. Протоколы сети доступа. Т.2 / Б. Гольдштейн. - СПб.: BHV, 2005. - 288 c.
    6. Зегжда Д.П. Основы безопасности информационных систем / Д.П. Зегжда, A.M. Ивашко. М.: Горячая линия - Телеком, 2000. - 452 с.
    7. Иванов М.А. Криптографические методы защиты информации в компьютерных системах и сетях. / М.А. Иванов. – М.: КУДИЦ-ОБРАЗ, 2001.-368 с.
    8. Корячко, В.П. Корпоративные сети: технологии, протоколы, алгоритмы / В.П. Корячко, Д.А. Перепелкин. - М.: Гор. линия-Телеком, 2013. - 219 c.
    9. Максим М. Безопасность беспроводных сетей / М. Максим, Д. Поллино — М.: ДМК-Пресс, 2004. 288с.
    10. Никонов В.И. Методы защиты информации в распределенных компьютерных сетях с помощью алгоритмов маршрутизации / В.И. Никонов // Доклады ТУСУР. 2010. - № 1 (21) , ч.2 - с. 219-224.
    11. Олифер, В.Г. Компьютерные сети. Принципы, технологии, протоколы: Учебник для вузов. Стандарт третьего поколения / В.Г. Олифер, Н.А. Олифер.. - СПб.: Питер, 2013. - 944 c;
    12. Описание мессенджера Cryptocat [Электронный ресурс] URL: https://ru.wikipedia.org/wiki/Cryptocat (дата обращения 02.04.2020).
    13. Описание мессенджера Telegram [Электронный ресурс] URL: https://ru.wikipedia.org/wiki/Telegram (дата обращения 06.04.2020).
    14. Описание мессенджера WhatsApp [Электронный ресурс] URL: https://ru.wikipedia.org/wiki/WhatsApp (дата обращения 06.04.2020).
    15. Описание мессенджера Viber [Электронный ресурс] URL: https://ru.wikipedia.org/wiki/Viber (дата обращения 03.04.2020).
    16. Панасенко С.П. Алгоритмы шифрования. Специальный справочник / С.П. Панасенко СПб.: БХВ-Петербург, 2009. - 576 с.
    17. Романец Ю.В. Защита информации в компьютерных системах и сетях / Ю.В. Романец, П.А. Тимофеев, В.Ф. Шаньгин — М.: Радио и связь, 2001. – 376с.
    18. Сверхзащищенный мессенджер Signal «тайно» сохраняет историю и ключи шифрования открытым текстом [Электронный ресурс] URL: https://habr.com/ru/post/427637/ (дата обращения 02.04.2020).
    19. VoIP-сервис Skype [Электронный ресурс] URL: https://webznam.ru/blog/voip_servis_skype/2019-06-04-1112(дата обращения 04.04.2020).
    20. Эволюция мессенджеров – короткая история индустрии сообщений за прошедшие 40 лет. [Электронный ресурс] URL: https://itcrumbs.ru/istoriya-evolyutsiya-messendzherov_23557 (дата обращения 02.04.2020).
    21. Шаньгин В.Ф. Защита компьютерной информации. Эффективные методы и средства / В.Ф. Шаньгин М.: ДМК-Пресс, 2008. - 544с.

    Вопрос-ответ:

    Какие протоколы передачи мгновенных сообщений оцениваются и сравниваются в статье?

    В статье оцениваются и сравниваются различные протоколы передачи мгновенных сообщений.

    Что включает в себя сравнительный анализ протоколов передачи мгновенных сообщений?

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

    Какие проблемы рассматриваются при анализе архитектуры системы обмена мгновенными сообщениями?

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

    Что включает в себя анализ программной архитектуры системы обмена мгновенными сообщениями?

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

    Какие протоколы передачи мгновенных сообщений получили наилучшие оценки в статье?

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

    Какие протоколы передачи мгновенных сообщений были проанализированы в статье?

    В статье были проанализированы различные протоколы передачи мгновенных сообщений, включая протоколы XMPP, SIP и IRC.

    Каким образом были оценены протоколы передачи мгновенных сообщений?

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

    Что было проанализировано в архитектуре системы обмена мгновенными сообщениями?

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

    Какая информация была изучена при анализе программной архитектуры?

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