Главная » Просмотр файлов » Пояснительная записка

Пояснительная записка (1191325), страница 7

Файл №1191325 Пояснительная записка (Защищенные облачные вычисления с использованием гомоморфного шифрования) 7 страницаПояснительная записка (1191325) страница 72020-10-01СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 7)

Рисунок 5.2  Вид группы элементов «Соединение с сервером»

В данной группе можно посмотреть такие параметры как:

  • статус сервера;

  • IPv4 адрес сервера;

  • порт подключения сервера.

Поле статус сервера может принимать несколько значений:

  • доступен (сервер в данный момент запущен и готов принимать запросы от клиентского приложения);

  • недоступен (по умолчанию данный статус выводится при старте приложения, также в тех моментах, когда по указанному адресу сервер не работает или, возникли проблемы с соединением к серверу);

  • проверка соединения (данный статус указывается при ручной проверке соединения с сервером, используя функционал приложения).

Редактирование параметров соединения с сервером

При первом запуске приложения параметры IPv4 адрес и порт соединения будут не заполнены, для того чтобы заполнить данные параметры пользователю необходимо нажать на кнопку «Редактировать» и заполнить необходимые данные в появившемся модальном окне (рисунок 5.3). Если требуется отменить внесенные изменения, то необходимо нажать на кнопку «Отмена».

Рисунок 5.3  Вид модального окна «Настройки соединения»

При вводе некорректных данных в поля настроек соединения пользователь будет предупрежден о некорректности вводимых данных всплывающим сообщением. Вид модального окна с сообщением представлен на рисунке 5.4.

Рисунок 5.4  Вид предупреждения при вводе некорректных данных

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

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

Рисунок 5.5  Лог приложения при проверке доступности сервера

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

      1. Группа элементов «Информация о приложении»

В группе информация о приложении содержится краткая информация о приложении (название, год написания) и его предназначении, также в этой группе находится информация об авторе приложения.

      1. Группа элементов «Лог приложения»

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

[Тип_события] Время_появления_события: Текст_сообщения

По типу события можно выделить три основных группы сообщений:

  • INFO – информационные сообщения, происходят при возникновении какого-либо события в приложении;

  • ERROR – сообщения об ошибке, происходят при возникновении ошибок при выполнении программы (например, недоступность сервера вычислений);

  • SUCCESS – сообщения об успешном выполнении каких-либо операций (например, успешное завершение операции шифрования операндов).

При накоплении большого количества сообщений в логе приложения можно очистить этот лог, нажав клавишу «Очистить».

      1. Группа элементов «Выполнение операций»

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

Рисунок 5.6  Вид группы элементов «Выполнение операций»

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

Для того чтобы выполнить вычисления над операндами необходимо в поля «1-ый операнд» и «2-ой операнд» ввести целые числа, а также указать операцию, которую необходимо над ними произвести. Операцию можно назначить кликом по кнопкам или .

Данное приложение рассчитано на работу с целыми числами и, если пользователь введет некорректные операнды в соответствующие поля или не заполнит их и нажмет на кнопку «Вычислить» появится сообщение о некорректном вводе данных (рисунок 5.7).

Рисунок 5.7  Предупреждение при вводе неверных операндов

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

На рисунке 5.8 представлен пример лога приложения при выполнении операции сложения операндов 13 и 425 при степени сопоставляемого полинома равной трем и степени шифрующего полинома, равной двум.

Рисунок 5.8  Лог приложения при выполнении операции сложения операндов

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

По окончанию вычислений результат выводится в текстовое поле с названием «Результат».

      1. Группа элементов «Статистика»

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

  • генерация первого полинома;

  • генерация второго полинома;

  • генерация шифрующего полинома;

  • шифрование первого полинома;

  • шифрование второго полинома;

  • выполнение операции (выполнение вычисления) на сервере;

  • дешифрование полинома для получения результата.

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

    1. Серверное приложение

По аналогии с устройством клиентского приложения серверное приложение (FHEncryptionServer) представляет собой форму (рисунок 5.9) с функциональными элементами, которые разбиты на группы. Пользовательский интерфейс серверного приложения содержит 4 группы элементов:

  • группа «Настройки сервера»;

  • группа «Управление сервером»;

  • группа «Информация о приложении»;

  • группа «Лог сервера».

Рисунок 5.9 – Главная форма серверного приложения



      1. Группа элементов «Настройки сервера»

С помощью элементов, находящихся в данной группе (рисунок 5.10), пользователь может просмотреть или отредактировать следующие параметры сервера:

  • IPv4 адрес сервера;

  • порт подключения к серверу.

Рисунок 5.10  Вид группы элементов «Настройки сервера»

Данные настройки указывают по какому адресу и порту сервер будет прослушивать входящие запросы на выполнение операций. Также в данной группе находится элемент, отображающий статус сервера в данный момент. Поле «Статус сервера» может принимать следующие значения:

  • остановлен (в данный момент сервер не работает и не ожидает входящих запросов);

  • работает (сервер работает и прослушивает настроенный порт на входящие запросы).

Редактирование настроек сервера

После запуска серверного приложения пользователю необходимо настроить параметры подключения (IPv4 адрес и порт) для дальнейшей работы с сервером.

Для того чтобы настроить IP адрес подключения к серверу необходимо в поле «IPv4 адрес» из выпадающего списка выбрать нужный IP адрес для входящих соединений. В выпадающем списке находятся IPv4 адреса всех сетевых интерфейсов рабочей станции, на которой запущено данное серверное приложение.

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

Рисунок 5.11  Вид модального окна «Настройки сервера»

Вводимое значение порта должно представлять из себя целое число в диапазоне от 49152 до 65535. Если введенные данные не отвечают условиям, то появится предупреждение о некорректности вводимых данных. Виды предупреждений представлены на рисунках 5.12 и 5.13.

Рисунок 5.12  Вид предупреждения при вводе неверного значения порта (вариант 1)

Рисунок 5.13  Вид предупреждения при вводе неверного значения порта (вариант 2)

Если введенные данные оказались корректными, то после нажатия кнопки «Сохранить» произойдет запись указанного значения порта в настройки программы.



      1. Группа элементов «Управление сервером»

Данная группа позволяет управлять состоянием сервера, а точнее, запускать сервер и останавливать его. Для того чтобы запустить сервер необходимо нажать на кнопку «Запустить», а, чтобы остановить – на кнопку «Остановить».

При начальном запуске серверного приложение обе кнопки заблокированы. Для того чтобы разблокировать кнопку, отвечающую за запуск сервера, необходимо произвести настройку параметров сервера. Когда все настройки будут заполнены, сервер будет готов к запуску и кнопка «Запустить» перейдет в активное состояние.

После нажатия на кнопку «Запустить» в логе приложения должны появится сообщения, сигнализирующее об успешном запуске сервера.

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

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

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

Рисунок 5.14  Лог сервера при выполнении операции сложения операндов

      1. Группа элементов «Информация о приложении»

В группе информация о приложении содержится краткая информация о приложении (название, год написания) и его предназначении, также в этой группе находится информация об авторе приложения.

      1. Группа элементов «Лог сервера»

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

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



  1. Экономическая часть. Расчет затрат на создание программного обеспечения





Процесс создания программного обеспечения включает в себя множество этапов. Наиболее значимым является этап разработки, так как эта стадия является наиболее длительной и трудоёмкой. Разработка программного обеспечения состоит четырех основных этапов: анализ требований, проектирование, кодирование (реализация), тестирование.

Характеристики

Список файлов ВКР

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
7040
Авторов
на СтудИзбе
260
Средний доход
с одного платного файла
Обучение Подробнее