Введение 3
Глава 1. Теоретические основы технологии Блокчейн, Смарт-контрактов и
РСХД 5
1.1 Общая информация о Блокчейн 5
1.2 История развития смарт-контрактов 7
1.3 Основные особенности смарт-контрактов в Ethereum 10
Глава 2. Анализ современных подходов для создания систем хранения данных 12
2.1 Описание систем хранения данных 12
2.2 Распределенное хранение данных: от облака до блокчейна 16
2.3 Основные проблемы, решаемые СХД 17
Глава 3. Выбор архитектуры разрабатываемой системы 20
3.1 Виртуальная машина Ethereum (EVM) 20
3.2 Клиенты для Ethereum 21
2.3 Описание языка программирования Solidity 25
2.4 Смарт-контракты в EVM и Solidty 26
Глава 4. Разработка прототипов смарт-контрактов 29
4.1 Подготовка к разработке 29
4.2 Анализ предметной области 29
4.3 Создание прототипа смарт-контрактов на Solidity 33
Заключение 39
Список использованных источников 41
Глоссарий 43
Приложение 1
Приложение 2
Блокчейн —это набор концептов и технологий, которые совместно образуют основу для экосистемы цифровых смарт-контрактов. Они используются для сохранения и передачи данных между участниками сети. Пользователи взаимодействуют друг с другом посредством протоколов Блокчейн через сеть Интернет. Стек протоколов доступен в виде ПО с открытыми исходными текстами и может быть запущен на различных устройствах, включая ноутбуки и смартфоны, что делает технологию легко доступной. [15]
Благодаря мощной теоретической базе, на основе Блокчейн стали появляется открытые платформы, разрабатываемые огромным сообществом. Одной из таких платформ является Ethereum, которая реализовывает идею Смарт-контрактов (умных контрактов). С помощью нее стало возможно написание надежных децентрализованных онлайн-сервисов, [7] которые позволяют регулировать взаимоотношения между людьми, используя строго определенный компьютерный алгоритм, который никак не зависит от влияния человека. Ко всему прочему, вся бизнес-логика, описанная в таких онлайн- сервисах, являются прозрачной для конечных пользователей.
Таким образом, технология Блокчейн является перспективной для реализации распределенной системы хранения данных, так как на сегодняшний день преобладают монолитные системы, которые чрезвычайно сложны, ненадежны и непрозрачны. [1]
Исходя из вышесказанного, актуальность работы диктуется потребностями людей в применении новых технологий, которые гарантируют безопасность и прозрачность внутренних процессов. К тому же, на сегодняшний день, существует огромное количество теоретических научных статей, которые рассматривают различные области применения смарт- контрактов.
Итак, целью исследования является написание прототипа, использующего умные контракты и технологию Блокчейн как практический способ их реализации.
Для достижения цели исследования следует решить ряд исследовательских задач:
1. Изучить теоретические аспекты реализации Блокчейн.
2. Изучить смарт-контракты, а также способы их реализации.
3. На основе изученного выбрать стек технологий, которые будут использоваться в прототипе.
4. Создать прототип распределенного хранения данных с помощью смарт- контрактов и Блокчейн.
Объектом исследования являются системы хранения данных, технология Блокчейн и смарт-контракты.
Предметом исследования решено выбрать документооборот в библиотеках (книжный реестр), эта область очень хорошо подходит под создание открытой распределённой системы на основе смарт-контрактов, которая облегчит работу по отслеживанию перемещения книг.
Блокчейн — это совершенно новая, беспрецедентная и сложная технология. Она опирается на децентрализованное управление над ключами и на независимой проверке сделок, поэтому самый важный принцип для разработчиков — это децентрализация. Безопасность. Со временем, без сомнений, разработают более эффективные инструменты и методы, которые будут проще в использовании.
В первой и второй главах мы изучили теоретические основы таких технологий, как Блокчейн и смарт-контракты, проанализировали современные подходы для создания систем хранения данных, их проблемы и решения.
Далее, в третьей главе, выбрали стек технологий для реализации программного решения. На данный момент технология Эфириум идеально подходит для решения представленной задачи. Язык Solidity ещё молодой, поэтому у него присутствуют некоторые ограничения, приходится адаптировать в код, который способна обработать виртуальная машина Эфириум, так что никаких сложных конструкций или уникальных абстракций на данный момент в нем нет. Сам язык в настоящее время продолжает активно разрабатываться, поэтому есть все основания полагать, что через несколько лет в нем могут появиться новые конструкции и технологии и усовершенствоваться уже существующие.
Четвертая глава полностью была посвящена разработке системы. Все данные, хранимые в системе общедоступны и независимы от вмешательства человека, логика жестко задана в смарт-контрактах. Для того, чтобы просто прочитать весь журнал движения книг в библиотеке достаточно поставить клиент Ethereum и выкачать всю цепочку блоков. То есть для простого чтения или изменения вовсе не обязательно ставить веб-приложение. Оно делает пользование системой намного более удобным для конечного пользователя.
При решении задачи, использующей умные контракты и технологию Блокчейн как практический способ реализации, в работе были изучены теоретические аспекты реализации Блокчейн, смарт-контрактов, а также способы их реализации, был выбран стек технологий, а также на их основе создан прототип распределенного хранения данных. Мы приходим к выводу, что технология Блокчейн отлично подходит для решения задач прозрачности, децентрализации данных и сохранения конфиденциальности.
Таким образом, задача в рамках предметной области документооборота решена в полном объёме, цель достигнута, все связанные с ней задачи были выполнены.
1. Власов Андрей Игоревич, Карпунин Алексей Александрович, Новиков
Илья Павлович. Системный анализ технологии обмена и хранения данных blockchain. [Электронный ресурс]. URL:
https://cyberleninka.ru/article/n/sistemnyy-analiz-tehnologii-obmena-i- hraneniya-dannyh-blockchain(дата обращения: 01.06.2018).
2. Общая информация о криптовалюте Биткоин, перспективы и
возможности инвестирования. [Электронный ресурс]. URL:
http://mixinvestor.com/unikalnaya-virtualnaya-valyuta-bitcoin (дата
обращения: 10.02. 2018).
3. Сатоши Накамото. Биткойн: система цифровой пиринговой наличности.
[Электронный ресурс]. URL: https://bitcoin.org/files/bitcoin-
paper/bitcoin_ru.pdf (дата обращения: 20.02.2018).
4. Что такое смарт контракт. [Электронный ресурс]. URL:
https://forklog.com/chto-takoe-smart-kontrakt (дата обращения:
20.03.2018).
5. Шольц Юрген, Шелер Торстен. Технология blockchain. Принципы работы и перспективы применения [Электронный ресурс]. URL: https://cyberleninka.ru/article/n/tehnologiya-blockchain-printsipy-raboty-i- perspektivy-primeneniya(дата обращения: 27.05.2018).
6. Andreas M. Antonopoulos, Gavin Wood: Mastering Ethereum: Building Smart Contracts and Dapps 1st Edition. O'Reilly Media, 2018, 200 c.
7. Ethereum Introduction. [Электронный ресурс]. URL:
https://github.com/ethereum/wiki/wiki/Ethereum-introduction (дата
обращения: 12.04.2018).
8. Franco P. The Blockchain. Understanding Bitcoin: Cryptography, Engineering and Economics. John Wiley &Sons, 2014, 288 c.
9. Gates, Mark. Blockchain. Ultimate guide to understanding blockchain, bitcoin, cryptocurrencies, smart contracts and the future of money. Mark Gates, 2017, 125 c.
10. Narayan Prusty. Building Blockchain Projects: Building decentralized Blockchain applications with Ethereum and Solidity. Packt Publishing - ebooks Account, 2017, 266 c.
11. Programming Ruby: The Pragmatic Programmer's Guide. [Электронный
ресурс]. URL:http://ruby-doc.com/docs/ProgrammingRuby (дата
обращения: 13.04.2018).
12. Siraj Raval. Decentralized Applications: Harnessing Bitcoin's Blockchain Technology. O'Reilly Media, 2016. 123 c.
13. Solidity Documentation. [Электронный ресурс]. URL:
http://solidity.readthedocs.io/en/v0.4.24(дата обращения: 01.06.2018).
14. Swan, Melanie. Blockchain: Blueprint for a new economy. O'Reilly Media
Inc., 2015, 130 c.
15. Tapscott, Don, Tapscott, Alex. Blockchain revolution: How the Technology Behind Bitcoin Is Changing Money, Business, and the World. USA, Amy Hill, 2016, 348 c.