Перечень принятых сокращений 5
Содержание 6
Введение 6
1. Анализ предметной области 8
1.1 Аналитический обзор технологии блокчейн 8
1.2 Анализ платформ для разработки блокчейн приложений и выбор подходящей для разрабатываемой системы 14
1.3 Анализ и выбор реляционной СУБД 20
1.4 Анализ и выбор архитектуры 24
1.5 Выводы по главе 27
2. Проектирование приложения 28
2.1 Транспортировка данных 30
2.2 Пользовательское приложение 34
2.3 Выводы по главе 54
3. Инструкция пользователя 55
3.1 Авторизация в системе 55
3.2 Рабочий стол пользователя 56
3.3 Экран «Процессы» 58
3.4 Экран «Новый процесс». Создание процесса 59
3.5 Экран «Спецификации» 61
3.6 Экран «Новая спецификация». Создание новой спецификации 62
3.7 Выполнение конкретного процесса между пользователями 64
3.8 Выводы по главе 69
4. Безопасность жизнедеятельности 71
5.Заключение 72
Список использованных источников 73
Приложение А. Листинги программы на Java 74
Приложение В. Листинг SQL-файла 115
Приложение С. Пример выполнения REST API 128
Приложение D. Презентация 142
В настоящее время развитие информационных технологий тесно связно с общественной жизнью, их использование значительно облегчает работу в любой сфере общественной жизни за счет сокращения временных затрат, доступности удаленного взаимодействия между пользователями; кроме того, оцифровывание многих процессов дает более точные вычисления, а также долговременное и безопасное хранение огромного количества данных. Особенно важным на данный момент является применение вычислительных средств в экономической области, так как эта сфера сейчас терпит нестабильное положение на мировой арене, поэтому автоматизация анализа больших объемов данных, их хранение, передача и использование в существующих экономических процессах является основной задачей цифровой экономики. Актуальным решением возникшей задачи является разработка и проектирований систем или приложений, упорядочивающих все протекающие процессы и исключающих возможность бесконтрольной модификации информации.
В данной работе будет рассмотрена реализация веб-приложения «Конструктор создания распределенных контрактов на основе технологии блокчейн». Данное приложение направлено на автоматизацию процесса обмена документов и их заверение участниками системы в рамках формализованных процессов. Также будет произведен сравнительный анализ уже существующих систем документооборота на базе блокчейн, выявлены их преимущества и недостатки.
В ходе выполнения данной выпускной работы была изучена технология блокчейн и получены навыки по работе с фреймворками Springи Vie.js. Результатами решения поставленной задачи являются:
— разработанная структура базы данных для СУБД PostgreSQL, которая позволяет хранить данные о пользователе, созданных им спецификаций и экземпляров процессов, данные по выполнению операций процесса, а также правила для отправки данных в Multichain;
— разработанный механизм транспортировки данных в Multichain. Транспортируются следующие данные: данные о пользователе (сертификат, ключи), данные о процессе (операции, выполненные в рамках процесса; хэш приложенного документа), данные о спецификации (хэш записи спецификации процесса);
— разработанный механизм фиксирования и заверения данных с использованием технологии блокчейн, реализованной в рамках одноранговой децентрализованной сети;
— разработанное и протестированное приложение «Конструктор создания распределенных контрактов на основе технологии блокчейн».
Благодаря используемой технологии блокчейн, разработанное приложение обеспечивает высокую степень защищенности хранимой информации, ее общедоступность, а также временную привязку, заверение и невозможность изменения электронных документов.
1. Генкин А. С., Михеев А. А. Блокчейн. Как это работает и что ждет нас завтра. — М.: Альпина Паблишер, 2018. — С. 562.
2. Свон М. Блокчейн: схема новой экономики — М.: Издательство «Олимп-Бизнес», 2017. — С. 17 — 19.
3. Roger Wattenhofer The Science of the Blockchain / Roger Wattenhofer — K. : Information technologies, 2016 — C. 94 - 120.
4. Andreas M. Antonopoulos Mastering Bitcoin: Unlocking Digital Cryptocurrencies / Andreas M. Antonopoulos — K. : NGITS, 2014. — C. 150 - 290
5. Имран Башир. Блокчейн: архитектура, криптовалюты, инструменты разработки, смарт-контракты — ДМК-Пресс, 2019. — С. 538.
6. Dr. Gideon Greenspan MultiChain Private Blockchain — White Paper / Dr. Gideon Greenspan — Founder and CEO, Coin Sciences Ltd, 2015. — С.17.
7. Дж. Уорсли, Дж. Дрейк. PostgreSQL. Для профессионалов — СПб.: «Питер», 2003. — С. 23-320.
8. Карл Вигерс, Джой Битти. Разработка требований к программному обеспечению — «Русская Редакция», 2016. — С. 796.
9. Леон Шкляр, Рич Розен. Архитектура веб-приложений. — М.: «Эксмо», 2010. — С.35-150.
10. Jesse Russell. Одноранговая сеть. — «Книга по требованию», 2012. — C. 23-99.
11. Шилдт Г. Java 8: руководство для начинающих. — М.: «Вильямс», 2018. — C. 149- 348.
12. Гради Буч, Джеймс Рамбо, Ивар Якобсон. Язык UML. Руководство пользователя, 2-е издание — ДМК «Пресс», 2007. — С. 221-367.