На основе проанализированных статей было решено использовать алгоритм ЭЦП на основе эллиптических кривых ECDSA. Также в данном алгоритме используются хеш-функции, с помощью которых вычисляется хеш от содержимого документа, а затем и публичный и приватный ключ, используемые в алгоритме ECDSA. Было решено применять алгоритм хеширования SHA-256. Формирование ЭЦП осуществляется следующим образом:
1) берется хеш от содержимого файла;
2) вычисляются публичные и приватные ключи у конкретного пользователя на основе эллиптических кривых;
3) содержимое файла подписывается приватным ключом пользователя;
4) публичный ключ и подпись запоминается в системе;
5) при проверке подписи берется хеш от содержимого файла и с помощью публичного ключа и хранящейся подписи сравниваются два значения. Если они совпадают, то целостность и подлинность не нарушена.
Реализация платформы по построению систем защищенного документооборота в данной выпускной квалификационной работе будет представлена на базе прототипа, который подстроен под предметную область компании, осуществляющей предоставление интернет-услуг. В данном случае под платформой подразумевается построение компоненты документооборота в информационной системе.
Целью выпускной квалификационной работы является разработка защищенной информационной системы с внедренной функцией документооборота. Для достижения поставленной цели необходимо выполнить ряд взаимосвязанных задач:
− создание базы данных;
− разработка веб-приложения для клиентов и сотрудников организации;
− создании функции загрузки файлов в систему;
− для загруженного файла необходимо осуществить формирование публичного и приватного ключа, а также подписи;
− хранение файла, публичного ключа и подписи в базе данных;
− выгрузка файлов из системы с проверкой электронной цифровой подписи;
− уведомление сотрудников в случае нарушения целостности файла.
ВВЕДЕНИЕ..................................................................................................... 3
1. ER-модель................................................................................................. 7
2. База данных MySQL............................................................................... 10
3. Node.js Express и модель MVC.............................................................. 13
4. Разработка клиентского приложения.................................................... 16
4.1. Web-приложение для абонентов......................................................... 16
4.2. Web-приложение для менеджеров....................................................... 17
5. Документооборот................................................................................... 22
5.1. Личный кабинет сотрудников с документооборотом........................ 22
5.2. Загрузка и электронная цифровая подпись документов.................... 23
5.3. Статусы и движение документов......................................................... 25
5.4. Проверка целостности документов..................................................... 30
ЗАКЛЮЧЕНИЕ............................................................................................. 34
СПИСОК ЛИТЕРАТУРЫ............................................................................. 40
ПРИЛОЖЕНИЕ............................................................................................. 42
1) Российская Федерация. Законы. Об информации, информационных технологиях и о защите информации : Федеральный закон от 27.07.2006 N 149-ФЗ : [принят Государственной Думой 8 июля 2006 г. : одобрен Советом Федерации 14 июля 2006 г.]. – Москва : Проспект ; Санкт- Петербург : Кодекс, 2017. – 150 с.
2) Ишмухаметов Ш.Т. Математические основы защиты информации: учебное пособие / Ш.Т. Ишмухаметов, Р. Х. Латыпов, Р.Г. Рубцова. – Казань, КФУ: 2014. – URL: https://kpfu.ru/docs/F366166681/mzi.pdf (дата обращения: 24.04.2021). – Режим доступа: по подписке.
3) Denton B. Modern Hash Function Construction / B. Denton, R. Adhami // Modern Hash. – 2012. – №1. – URL: https://www.researchgate.net/publication/267298547_Modern_Hash_Function_Co nstruction (дата обращения: 29.04.2021).
4) Говоров А.О. Анализ стандартов электронной цифровой подписи/ А.О. Говоров, Г. И. Никулищев, Г.Л. Козина // Научная электронная библиотека «КиберЛенинка». – 2007. – №1. – URL: https://cyberleninka.ru/article/n/analiz-standartov-elektronnoy-tsifrovoy-podpisi (дата обращения: 29.04.2021).
5) Mishall Al-Z. Efficient and Secure ECDSA Algorithm and its Applications: A Survey / Mishall Al-Z, Zhongwei Zhang // ECDSA Algorithm. – 2019. – №1. – URL: https://www.researchgate.net/publication/331397446_Efficient_and_Secure_ECD SA_Algorithm_and_its_Applications_A_Survey (дата обращения: 30.04.2021).
6) Волошин В.А. Инфологическая модель данных: пример построения er-диаграммы / В.А. Волошин, В. Д. Шляхов, С.О. Барышевский
// Международный студенческий научный вестник. – 2020. – № 2. – URL: https://eduherald.ru/ru/article/view?id=20048 (дата обращения: 04.05.2021).
7) Xiao-Qin Xia. TabSQL: a MySQL tool to facilitate mapping user data to public databases / Xiao-Qin Xia, Michael McClelland, Yipeng Wang //
BMC Bioinformatics. – 2010. – №11 – URL: https://www.researchgate.net/publication/44697581_TabSQL_A_MySQL_tool_to
_facilitate_mapping_user_data_to_public_databases (дата обращения: 05.05.2021).
8) Роберт Шелдон. MySQL 5: Beginning MySQL / Роберт Шелдон, Джоффрей Мойе. – Indianapolis: Indiana, 2007. — 880 с. — ISBN 978-5-8459- 1167-4.
9) Итан Браун. Web Development with Node and Express / Итан Браун
— Санкт-Петербург, 2017. — 336 с. — ISBN 978-1-491-94930-6.