ВВЕДЕНИЕ 4
Глава 1. Анализ предметной области технологии блокчейн на примере криптовалюты
Bitcoin 6
1.1 Децентрализация 8
1.1.1 Криптографические основы работы системы Bitcoin 8
1.2 Транзакции и формирование блоков 15
1.3 Особенности использования технологии блокчейн 18
1.4 Возможности развития технологии блокчейн 19
1.5 Появление децентрализованных приложений 20
1.6 Пример приложения на основе технологии блокчейн 21
1.7 Выводы по результатам первой главы 25
Глава 2. Разработка приложения 26
2.1.1 Основная платформа разработки 26
2.1.2 Основной язык разработки 29
2.1.3 Основная программная платформа разработки 30
2.1.4 Эмулятор сети Ethereum 31
2.1.5 Клиент для взаимодействия с сетью Ethereum 33
2.1.6 Стек веб-разработки 34
2.2 Разработка программы 36
2.2.1 Логика смарт-контракта 36
2.2.2 Подробности реализации 38
2.3 Выводы по результатам второй главы 40
Заключение 41
Список сокращений 42
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 43
ПРИЛОЖЕНИЕ А 45
ПРИЛОЖЕНИЕ Б 55
В настоящее время формируется новая модель создания масштабируемых и эффективных приложений, основой для которой является система Bitcoin и технология блокчейн.
Самой распространённой моделью работы различных приложений и интернет-сервисов на данный момент является централизованная. В таких системах вся информация и процессы проходят через центральный узел, принадлежащий частным лицам или компаниям, имеющим над ним полный контроль. Таким образом, подобные системы имеют множество уязвимых мест, от человеческого фактора до возможного отказа или неисправности оборудования. Под децентрализованными подразумеваются системы, в которых отсутствуют узлы, управляющие работой других узлов.
Но такие системы существуют уже давно. Настоящим новшеством являются системы, умеющие достигать децентрализованного консенсуса. До появления подобных решений в любом приложении требовалась некоторая централизация. Теперь же, если приложение требует согласия между участвующими сторонами, то использование цепочки блоков позволяет достичь этого децентрализованным способом. Цепочка блоков - неизменяемая запись, копия которой хранится всеми узлами сети. Если один из участников сети попытается внести в цепочку изменения, не соответствующие консенсусу, то остальные участники отклонят это изменение в автоматическом режиме, сохранив достоверность информации в цепочке блоков.
Это открывает новые возможности для взаимодействия между людьми, а также новые способы решения привычных задач.
Для демонстрации этого целью работы было выделено создание децентрализованного приложения назначения встреч на мероприятиях, в котором всё взаимодействие между пользователями (включая экономическое) происходит без участия третьих лиц.
В рамках работы были выделены следующие задачи:
- провести анализ предметной области технологии блокчейн и выбрать платформу для разработки;
- разработать приложение.
В развитии интернета сформировался явный тренд к появлению децентрализованных приложений и сервисов. Это позволит смягчить недостатки централизованного интернета, имеющиеся на данном этапе.
В связи с этим необходимо изучать возможности современных платформ для реализации децентрализованных приложений и использовать их в повседневной жизни, делая различные экономические процессы более эффективными и менее затратными.
В работе были рассмотрены современные средства для разработки децентрализованных приложений, описаны достоинства и недостатки.
Был разработан алгоритм работы децентрализованного приложения для организации встреч на мероприятиях и выполнена его реализация.
Разработанное приложение может быть использовано для создания конкурентного и открытого экономического сотрудничества и организации встреч экономически заинтересованных участников, а так же для продажи билетов с хранением права собственности на них в цепочке блоков.