Код | 456153 | ||
Дата создания | 2020 | ||
Страниц | 35 ( 14 шрифт, полуторный интервал ) | ||
Источников | 9 | ||
Изображений | 17 | ||
Файлы
|
|||
Без ожидания: файлы доступны для скачивания сразу после оплаты.
Ручная проверка: файлы открываются и полностью соответствуют описанию. Документ оформлен в соответствии с требованиями ГОСТ.
|
В современном мире в условиях внедрения информационных технологий во многие сферы деятельности человека, государства и общества возникает острый вопрос о сохранении целостности информации, фигурирующей в информационных системах. Средством, позволяющим однозначно ответить на вопрос о целостности электронного документа, как раз и является электронная цифровая подпись.
В нашем быстро развивающемся обществе время для бизнеса очень ценно, тогда как использование электронной цифровой подписи вместо обычной собственноручной позволяет существенно, а порой и в разы сократить время, необходимое на одни и те же действия.
Целью данной работы является разработка клиент-серверного приложения для создания и распознавания QR кода с электронной цифровой подписью при использовании современных популярных фреймворков (Maven, Spring) для отображения информации о сотрудниках компании, которая подгружается посредством подключения к базе данных PostgreSQL.
Клиент реализуется как мобильное приложение на платформе Android OS, а сервер в свою очередь организован на локальном персональном компьютере. Сервер отвечает за прием запросов от клиента, в которых клиент спрашивает, достоверна ли подпись, распознанная им через QR код, а также за отправку запросов-ответов клиенту с информацией о сотруднике в случае подлинности цифровой подписи.
Разработанный программный продукт реализует модель пропускной системы компании, при которой с помощью мобильного приложения (в данном случае мобильное приложение имитирует турникет пропускной системы) сканируется QR код, в котором должна храниться подписанная информация о сотруднике. В случае достоверности подписи выводится
информация о сотруднике, которая идентифицирует сотрудника для службы безопасности. Естественно, что при устройстве сотрудника на работу информация о нем вносится в базу данных и создается его персональный QR код с уникальным идентификатором, которому как раз и присваивается электронная цифровая подпись.
Выпускная квалификационная работа состоит из введения, первой главы, второй главы, заключения, списка литературы и приложения.
1.1 Выбор языка программирования и среды разработки
Java – широко используемый язык программирования, разработанный специально для использования в сети Интернет. Язык Java активно используется для создания мобильных приложений под операционную систему Android, также он является самым популярным для устройств и интернет-технологий.
Программы, созданные на Java, предполагают переносимость в сети. Исходный код скомпилирован в то, что Java программисты называют - байт- код, который можно запускать в любом месте сети на сервере или клиенте с виртуальной машиной Java (JVM). JVM интерпретирует байт-код в код, который будет работать на компьютерном оборудовании. JVM включает в себя необязательный компилятор Just-in-time (JIT), который динамически компилирует байткод в исполняемый код в качестве альтернативы интерпретации одной инструкции байт-кода за раз. Во многих случаях динамическая компиляция JIT быстрее, чем интерпретация виртуальной машины.
...
1.2 Особенности операционной системы Android
Операционная система Android, по сравнению с iOS или OS Windows, является достаточно своеобразной. Поэтому для получения поставленного результата разработчик непременно должен иметь представление об основных особенностях и своеобразных функциях, присущих данной операционной системе. Нетрудно догадаться, что в процессе разработки возникают сложности и препятствия, которые необходимо учитывать для получения поставленных целей. К особенностям и сложностям Android разработки можно отнести следующие:
...
1.6 Электронная цифровая подпись. Реализация ЭЦП на основе алгоритма RSA и функции хеширования SHA256
Электронная цифровая подпись (ЭЦП) уже давно обширно используется в современном развивающемся мире. В данный момент электронная цифровая подпись является незаменимым инструментом при ведении бизнеса, позволяя физическим лицам, компаниям и корпорациям существенно экономить свое драгоценное время. Развитие системы электронных платежей уже немыслимо без средств, позволяющих доказать подлинность и целостность документа.
Таким средством как раз и является ЭЦП, которая сохранила свойства обычной подписи. Документ, подписанный электронной цифровой подписью, имеет такую же юридическую силу, как и бумажный документ, подписанный собственноручной подписью правомочного лица и скрепленный печатью.
...
1.7 Постановка задачи
Целью данной работы является разработка клиент-серверного приложения для создания и распознавания QR кода с электронной цифровой подписью при использовании современных популярных фреймворков (Maven, Spring) для отображения информации о сотрудниках компании, которая подгружается посредством подключения к базе данных PostgreSQL.
Клиент реализуется как мобильное приложение на платформе Android OS, а сервер в свою очередь организован на локальном персональном компьютере. Сервер отвечает за прием запросов от клиента, в которых клиент спрашивает, достоверна ли подпись, распознанная им через QR код, а также за отправку запросов-ответов клиенту с информацией о сотруднике в случае подлинности цифровой подписи.
Для достижения этих целей предполагается целесообразным решить следующие задачи:
- Рассмотреть и изучить синтаксис языка программирования Java SE, их технические возможности;
...
2.1 Серверная часть приложения
Как уже говорилось ранее, серверная часть данного приложения рассчитана на добавление информации о сотруднике в базу данных, а также на создание QR кода с уникальным идентификатором сотрудника и электронной цифровой подписью этого идентификатора. Рассмотрим непосредственно работу сервера.
Для удобства работы разработчика на сервере инструментами из стандартной библиотеки Java Swing был создан примитивный графический интерфейс, с помощью которого будем добавлять сотрудников в базу данных:
...
2.2 Клиентская часть приложения
Рассмотрим реализацию клиентской части данного приложения, которая была реализована, как уже упоминалась выше, в среде Android Studio и которая была протестирована на мобильном устройстве Xiaomi Redmi Note 5 на базе Android 8.1 (API level 27).
При открытии приложения открывается приветственное окно с кнопкой, запускающей непосредственно процесс сканирования QR кода с электронной цифровой подписью:
...
ЗАКЛЮЧЕНИЕ
В процессе проектирования выпускной квалификационной работы было создано приложение для создания и распознавания QR кода с электронной цифровой подписью. Проект был реализован на языке программирования Java и использованием популярных фреймворков Maven, Spring, а также базы данных PostgreSQL
Результатом выполнения работы является разработанное клиент- серверное приложение для распознавания QR кодов с ЭЦП, хранящих информацию о сотрудниках компании.
Цели, поставленные на дипломную работу и определенные при постановке задачи, выполнены в полном объеме, а именно:
...
ПРИЛОЖЕНИЕ
Программный код
Сборка employeeDB-master
EmployeeController.java
Employee.java
EmployeeDto.java
SignIdDto.java
EmployeeService.java
SignChecker.java
SignMaker.java
QRCreator.java
MakerImpl.java
CheckerImpl.java
QRCreatorImpl.java
TripleBigInt.java
RSA.java
EmployeeGUI.java
EmployeedbApplication.java
...
Сборка qrcodeclient
...
Печатные издания
Интернет – ресурсы