Abstract and keywords
Abstract (English):
The article highlights the approach to processing landed property data based on Blockchain technology and Ethereum platform, which allows the transparent, decentralized and highly reliable system for network users with restricted access to personal data. A review of the platforms for creating decentralized online services has been performed; their advantages and disadvantages considered. The inventory of the fields required for work with the landed property. There have been selected tools for working with Ethereum platform: browser Mist and the high-level language Solidity. To facilitate working with the inventory there were created a site with a map based on SharePoint platform and integrated using API Yandex.map. Peculiarity of the system under consideration is the need for trust between the participants who add data to the inventory. It has been proposed to use either a system based on a credible exchange of certificates, as they provide the high level of personal data security and have a service life, i.e. they are active only for one session, or a system of criteria for calculating the combined trust and assigning it to another person. Emphasis is made on the need to take into account the context of collaboration and shared services in trust management. The use of Blockchain technology for solving a practical task, namely, processing and storing spatial data on landed property, is an efficient way to store data, which will ensure the data relevance and reliability, as well as reduce their loss

Keywords:
blockchain, Ethereum platform, smart contract, transaction, block, contract, inventory, landed property
Text
В мире в последнее время активно развивается применение технологии блокчейн в различных сферах деятельности. В Китае на блокчейн планируется перевести работу Национального фонда социального страхования [1]. В международной торговле технологию впервые опробовали в начале осени 2016 г. На платформе Wave британским банком Barclays в адрес Сейшельской компании был проведен аккредитив на 100 тыс. долл., обеспечивающий экспорт предприятием из Ирландии Ornua крупной партии молочных продуктов. Стандартно такая сделка занимает минимум неделю, применение технологии блокчейн позволило сократить это время до четырех часов [2]. Стимулом для внедрения данной технологии в России послужили ориентация на цифровую экономику и принятие Правительством РФ соответствующих нормативных документов. В научной литературе рассматриваются возможности внедрения данной технологии в самые различные сферы: в экономике, управлении производством, логистике и пр. Некоторые исследования описывают применение данной технологии в образовании, в различных информационных системах. Национальный расчетный депозитарий РФ в мае 2018 г. объявил об успешном завершении разработки системы электронного голосования на основе технологии блокчейн. В Пермском государственном национальном исследовательском университете открыта первая лаборатория по изучению блокчейн для решения прикладных задач, таких как межбанковские и биржевые расчеты, финансовые расчеты в международных холдингах и группах, открытое электронное голосование, подтверждение авторских прав на цифровой контент и электронный нотариат. Проводятся тестовые транзакции между банками страны с использованием технологии блокчейн («Альфа-Банк», Банк «Открытие», «Тинькофф Банк» и Qiwi) [3, 4]. Сущность технологии блокчейн Блокчейн - это распределенная база данных, устройства хранения данных которой не подключены к общему серверу. Эта база данных хранит постоянно растущий список упорядоченных записей, называемых блоками. Каждый блок содержит метку времени и ссылку на предыдущий блок. Вся сеть блокчейна строится с применением математического аппарата и криптографии. Таким образом, каждый узел сети блокчейн в каждый момент времени имеет доступ к общей и единственно правильной информации, которой можно доверять. Среди преимуществ данной технологии можно выделить следующие: полная доступность к данным системы, децентрализация базы данных (нет единой точки отказа системы), отсутствие администраторов, контролирующих сеть и данные в ней, защита данных от корректировок и удаления, снижение затрат на ведение реестра, отсутствие посредников при проведении транзакций. В блокчейн-сети по передаче криптовалюты биткоин (самая известная сеть) пользователи могут проводить финансовые транзакции напрямую друг с другом. Сеть построена на весьма остроумных принципах, позволяющих обходиться без единого центра, но задачи решаются вполне классические. По большому счету, это обычная платежная система: люди, деньги, переводы. Но на современном этапе необходимы более усовершенствованные платежные системы, которые позволяют писать программы, например, для автоматической работы с кошельками (автоплатежи). Существует целый набор платформ для создания децентрализованных онлайн-сервисов на базе блокчейна, работающих с применением умных контрактов: Ethereum, Cardano, NEO, Ethereum Classic, Lisk. Каждая из этих платформ имеет преимущества и недостатки, а также направлена на выполнение некоторых функций, которые отсутствуют (или пока отсутствуют) у других. Так, создатели Cardano акцентируют внимание на масштабируемости и демократизации процесса голосования; NEO выполняет оцифровку многих видов традиционных активов для их использования в смарт-контрактах; Ethereum Classic, появившийся в результате несогласия участников проекта с хардфорком Ethereum и ставший независимым проектом, делает все то же самое, что и Ethereum, только в меньших масштабах; Lisk достиг определенных успехов в работе с сайдчейнами, чтобы оптимизировать свою сеть и добиться ее масштабируемости. Ethereum - это платформа, где к функциональности биткоина на блокчейне добавлена возможность создавать различные программы. Платформа достаточно давно развивается. Технология Ethereum позволяет регистрировать любые сделки с любыми активами на основе распределенной базы контрактов блокчейн, не прибегая к традиционным юридическим процедурам. Эта возможность является конкурентной по отношению к существующей системе регистрации сделок. Ethereum - платформа для написания и интеграции приложений на основе блокчейн-технологий. Если не считать, что в случае с биткоином основной целью создания была разработка именно децентрализованной валюты, то обе системы схожи. Но если вдаваться в подробности, то Еthereum - платформа, язык программирования, сервисный комплекс и фундамент для создания программного продукта с второстепенным явлением в виде актива-валюты ЕТН. Биткоин же - цель всей разработки, приложение, работающее на основе блокчейн-технологии, самодостаточный и конечный продукт, хотя и не останавливающийся в развитии и модернизации. С помощью технологии блокчейн и созданной для нее платформы Ethereum появилась возможность написания программ, которые могут затрагивать различные сферы деятельности, а не только передачу криптовалюты. В данной статье предлагается использовать технологию блокчейн для хранения данных о земельной собственности. Реестр земельной собственности В настоящее время в базах данных о земельной собственности используются следу-ющие данные: - кадастровый номер; - местоположение; - целевое предназначение; - правовое положение; - принадлежность к определенной территориальной зоне; - идентифицирующие параметры; - наличие на участке капитальных объектов, неразрывно связанных с землей; - статус объекта; - точный адрес; - реальная площадь; - кадастровая стоимость; - дата постановки на учет в кадастр; - дополнительные параметры. В разрабатываемой системе вводится ряд дополнительных полей, содержащих информацию о владельце участка: фамилия, имя, отчество (ФИО), контактные данные и пр. Далее с помощью смарт-контракта (умный контракт) создается общая структура реестра, с указанными выше полями, а также реализуется основная логика для ввода данных о земельной собственности в сеть Ethereum. Таким образом, новая система благодаря технологии блокчейн имеет следующие преимущества по сравнению с текущей: - прозрачность для пользователей сети; - децентрализация системы; - высокий уровень надежности. В отличие от сложившейся процедуры использования системы блокчейн при работе с криптовалютой, при решении задачи хранения данных о земельной собственности необходимо было решить ряд проблем и провести адаптацию для нашей системы. Например, в стандартной сети блокчейн невозможно восстановить учетные данные владельца личного кабинета при их утере, таким образом, все транзакции, предназначавшиеся пользователю (например, криптовалюта), при утере ключа также могут считаться полностью утерянными. Следующее отличие - это прозрачность данных для всех участников сети. В нашем случае сделать доступными все данные для всех участников невозможно, т. к. часть данных в системе имеет личный характер, например ФИО владельца участка, его контактные и личные данные. Таким образом, прозрачность в сети разрабатываемой системы будет частично (применительно к личным данным) ограничена. Новая система унаследует не все преимущества технологии блокчейн, но главное из них - децентрализованность системы - сохранится. Это значит, что при утере данных 99 % компьютеров сети информацию можно будет восстановить с оставшегося узла полностью, в актуальной форме, любому из участников сети, что является наиболее важным отличием от текущих систем хранения данных. Также данные в сети невозможно подделать администратору или стороннему пользователю, т. к. система защищена сложной структурой алгоритма блокчейн, основанной на криптографии. Таким образом, эти основные преимущества обеспечивают актуальность разрабатываемой системы и уникальность по сравнению с текущими базами данных. Определим для разрабатываемой системы ряд следующих полей: - идентификатор участка; - местоположение; - целевое предназначение; - правовое положение; - принадлежность к определенной территориальной зоне; - статус объекта; - точный адрес; - реальная площадь; - кадастровая стоимость; - дата постановки на учет в кадастр; - фамилия, имя, отчество владельца участка; - контактные данные; - паспортные данные; - дополнительные параметры. Для данного набора полей с использованием среды Remix создадим смарт-контракт, который позволяет вносить в блокчейн данные и получать их из него путем применения полей типа set* (ввод данных) и полей типа get* (для получения текущих значений полей). Для внедрения полученного кода в блокчейн используется браузер Mist как один из способов подключения к сети Ethereum. Написание кода происходило на Solidity - высокоуровневом языке для виртуальной машины Ethereum с синтаксисом, похожим на JavaScript. Так как загрузка кода в виртуальную машину является операцией, за нее снимается плата. После выбора нужного контракта для публикации его в сети браузер Mist предложит внести определенную плату за публикацию и ввести пароль текущего аккаунта для подтверждения оплаты. Но существуют операции, которые намеренно сделаны бесплатными. К таким относится, например, очистка временных данных (деструктор). Это сделано, чтобы мотивировать создателей контрактов меньше засорять глобальное хранилище. После оплаты транзакции эта транзакция будет отображена в кошельке. Для принятия новой транзакции в сети ее должны одобрить другие узлы. Первое подтверждение будет означать, что транзакция включена майнером в блок, последующие - что создано соответствующее количество блоков после блока с нашей транзакцией. Это дает большую гарантию, что блок с нашей транзакцией не будет отменен. Но для того чтобы контракт стал активным, достаточно одного подтверждения. В любой момент времени можно посмотреть информацию о контракте, включая данные, внесенные в блокчейн, уникальный хеш-код контракта и номер блока сети, в котором эти данные хранятся. Информация для разработанного контракта представлена на рис. 1. Рис. 1. Информация о контракте Зная номер блока или хеш контракта, любой пользователь может найти информацию о нем в базе Еthereum. На рис. 2 представлена информация о нашей транзакции, найденная по номеру блока в базе Etherscan. Рис. 2. Информация о контракте в базе Etherscan Чтобы другие пользователи могли просматривать и пользоваться контрактом, они должны знать две его составляющие: адрес и интерфейс ABI. Все это можно узнать на странице контракта в Mist (кнопки Copy address и Show Interface). Адрес - это такое же 20-байтное шестнадцатеричное число, в нашем случае это 0xc23F4f71d4D64A0b 8F22C9C36f864c00fc83De2c. А интерфейс - JSON-текст, для нашего смарт-контракта он выглядит следующим образом (рис. 3): Рис. 3. Интерфейс контракта Для исполнения контракта, так же как и при внедрении смарт-контракта, требуются подтверждения. Информация о транзакции, включая отправляемые и все исходящие данные, также будет доступна всем участникам сети блокчейн (рис. 4). Рис. 4. Информация о выполненном контракте В блоке Input Data хранится хеш данных, внесенных в смарт-контракт. Так как в сети блокчейн за любое выполнение функции set взимается плата, можно использовать одну функцию set* на весь набор данных, который возможно будет внести в систему единовременно. Рассмотрим примеры внесения наборов данных в блокчейн. Первым примером может служить использование типа данных - mapping. Записывается он так: mapping (тип_ключей => тип_значений) имя_переменной. Это массив, который хранит пары (ключ => значение). Данный тип можно представлять себе как таблицу из двух столбцов, которую можно расширять. При этом каждый столбец имеет тип. Таким образом, мы можем записывать в mapping произвольное количество значений. На рис. 5 представлено внесение элемента email в блокчейн. Рис. 5. Добавление поля email Чтобы получить внесенное значение, getData вызывается с параметром email, как представлено на рис. 6. Рис. 6. Получение данных Вторым примером, более простым в исполнении, может служить использование склеенной строки, которая позволит добавить весь набор данных в систему, а затем разделить их, используя функцию сплит по некоторым специальным символам. Например, набор данных, содержащих идентификатор земельной собственности, адрес объекта и наименование владельца можно записать как строку 123**г. Архангельск, пл. Ленина, 2**ОАО ЖИЛКОМ. Разделителями в нашем случае будут являться **, с помощью которых в дальнейшем можно будет автоматически разделить строку, хранимую в блокчейн, для использования в базе данных. Этот способ является наименее затратным, т. к. с его помощью в систему можно внести все данные по объекту, используя лишь одну функцию set*, но в данном способе, вводя строки вручную, пользователю легче всего ошибиться. В настоящее время для работы с блокчейн стремительно развивается сфера написания децентрализованных приложений, интерфейс которых упрощает работу пользователя с блокчейн-реестром, сводит к минимуму выполнение сложных операций. Разработку приложения с интуитивно-понятным интерфейсом для работы с данными блокчейна рассмотрим далее. Развертывание реестра на платформе SharePoint. Для более удобной работы с данными в блокчейн разрабатываются различные децентрализованные приложения, сайты для совместной работы с реестрами, расширения для браузеров и многие другие сервисы. Одна из наиболее привлекательных черт технологии децентрализованных приложений - отсутствие ограничений в количестве участников вне зависимости от сегмента рынка, особенно тогда, когда блокчейн стали использовать не только в качестве получения дохода, но и во многих других целях. В связи с тем, что наш эксперимент проводился на базе Северного (Арктического) федерального университета и для разработчиков была доступна платформа SharePoint, именно с ее применением был создан сайт для удобной работы с базой данных. Платформа SharePoint может быть использована для создания сайтов, предоставляющих пользователям возможность для совместной работы. Создаваемые на платформе SharePoint сайты могут быть использованы в качестве хранилища информации, знаний и документов, а также использоваться для исполнения облегчающих взаимодействие веб-приложений, таких как вики и блоги. Пользователи могут управлять и взаимодействовать с информацией в списках и библиотеках документов. На сайте был создан реестр, имеющий ту же структуру, что и поля, разработанные для внесения в блокчейн и использующиеся в смарт-контрактах. Все поля представлены на рис. 7. Рис. 7. Перечень полей С помощью такого списка вести реестры более привычно, особенно пользователям, мало связанным с ИТ-сферой. Значения в реестр заносятся через формы создания, пример которой, для разрабатываемого реестра, представлен на рис. 8. Рис. 8. Форма создания элемента На рис. 9 представлена форма просмотра элемента списка, которая позволяет подробно просмотреть поля элемента. Рис. 9. Форма просмотра элемента Формы просмотра также могут содержать поля, которые не отображаются в общем представлении списка, а также удобны для настройки разрешений на поля относительно различных категорий пользователей. На рис. 10 представлена форма редактирования элемента, с помощью которой пользователь с соответствующими правами может в любой момент внести изменения в информацию о текущем объекте. Рис. 10. Форма редактирования элемента Все данные, представленные в реестре, имеют табличную структуру, с которой можно работать, используя различные стандартные функции SharePoint, например фильтрацию элементов или поиск элемента по полям. Фрагмент разработанного реестра с данными представлен на рис. 11. Рис. 11. Фрагмент реестра Для удобства представления информации сайт предоставляет возможность создавать веб-части или нестандартные настройки. Например, для разрабатываемого реестра с помощью API Яндекс-карт на сайт была внедрена карта, на которой можно просматривать территории, внесенные в реестр (рис. 12). Рис. 12. Карта реестра на основе API Яндекс-карт В перспективе можно сделать веб-часть с интерактивной картой, чтобы данные реестра автоматически отображались на карте сразу после добавления новых данных или внесения изменений в данные реестра. Реестр также предоставляет возможность разграничивать права - как на элементы списка, так и на отдельные поля, т. е. если сайт будет использоваться в открытом доступе, поля, содержащие личные данные владельцев участков, могут быть скрыты от обычных посетителей сайта, но открыты для группы редакторов, например госслужащих, относящихся к ведению реестра прав собственности. Для синхронизации сайта с базой блокчейн предлагается использовать структуру, представленную на рис. 13. Рис. 13. Синхронизация сайта с блокчейн Все изменения реестра SharePoint могут выгружаться в файл, данные из которого будут, в свою очередь, загружаться в реестр блокчейн. Таким образом, схема работы с реестром для стандартных пользователей не изменится, структуру можно будет просматривать и редактировать в привычном виде. Изменится только структура хранения данных: не в стандартных базах данных, как это происходит сейчас, а в реестре блокчейн. Обеспечение доверия между участниками реестра. Особенностью рассматриваемой системы для работы с реестром земельной собственности, использующей Ethereum, является необходимость доверия между участниками, добавляющим данные в этот реестр. По этой причине оператор Госреестра прав собственности должен оценить надежность участника до предоставления ему доступа к реестру. Эта оценка основана на истории действий участника, чтобы спрогнозировать его поведение в будущем. В зависимости от контекста важность критериев оценки участника может варьироваться, поэтому может быть использован метод AHP [5], присваивающий критерий на основе коэффициента, указывающего на его значимость в данном контексте. Особый акцент делается на безопасности доступа к реестру, что определяется наличием возможности проведения нескольких атак: атаки доступа и атаки отказа в обслуживании. Первая атака - попытка доступа со стороны неавторизованного участника - угрожает конфиденциальности информации и данных, в то время как вторая атака направлена на то, чтобы сделать недоступными данные для других участников из-за большого количества запросов и сообщений, отправленных злоумышленником, что препятствует эффективному функционированию реестра. Участники и Госреестр могут использовать систему на основе доверительного обмена сертификатами или систему доверия на основе репутации и расчета различных критериев доверия. С одной стороны, сертификаты обеспечивают уровень безопасности персональных данных. С другой стороны, сертификаты имеют срок службы и активны только для одного сеанса. Другой подход использует критерии для расчета общего доверия и присвоения его другому лицу. Эти критерии доверия являются предметом нескольких исследований: модель Power Trust предлагает мощные механизмы доверительного управления в сети, которым могут угрожать злонамеренные действия; модель Peer Trust использует конкретные факторы для вычисления оценки участника; модель EigenTrust вычисляет глобальный рейтинг доверия, используя существование доверенных узлов в сети; модель SecTrust нацелена на обеспечение доверительного управления на основе использования открытых ключей. Но данные модели не подходят для использования в реестре, т. к. управляют взаимными доверительными отношениями одинаковым образом. Необходимо учитывать контекст совместной работы и общих сервисов в доверительном управлении (рис. 14). Рис. 14. Архитектура взаимодействия участников Таким образом, для реестра земельной собственности на платформе Ethereum определен набор необходимых полей, представлена его реализация на платформе SharePoint c интегрированными Яндекс-картами и с учетом доверительных отношений между участниками. Заключение Применение технологии блокчейн для решения практической задачи, а именно обработки и хранения пространственных данных на примере данных о земельной собственности, обеспечит эффективный способ хранения данных, их актуальность и достоверность, а также позволяет сократить их потерю. Предложенный набор полей может быть расширен и адаптирован для использования в других предметных областях с использованием платформы Ethereum, браузера Mist, высокоуровневого языка Solidity, интеграции с Яндекс-картами
References

1. Leonid Kovachich. Put' cherez blokcheyn: kak Kitay osvaivaet novye finansovye tehnologii. URL: https://www.rbc.ru/opinions/economics/21/06/2017/594a30529a794767690a7042 (data obrascheniya: 25.05.2018).

2. Volkonska E. Blokcheyn - chto eto ponyatnym yazykom. URL: http://bestinvestpro.com/blokchejn-chto-eto-ponyatnym-yazykom/ (data obrascheniya: 25.05.2018).

3. Sarycheva M. Finansisty uhodyat ot real'nosti. URL: https://maik-interbiz.blogspot.com/2017/06/blog-post_65.html (data obrascheniya: 25.05.2018).

4. V PGNIU otkryli laboratoriyu dlya izucheniya revolyucionnyh tehnologiy blokcheyn. URL: http://www.psu.ru/news/v-pgniu-otkryli-laboratoriyu-dlya-izucheniya-revolyutsionnykh-tekhnologij (data obrascheniya: 25.05.2018).

5. Saaty T. L. Decision making the analytic hierarchy and net-work processes (AHP/ANP) // International Journal of Services Sciences. 2008. V. 1. N. 1. P. 83-98.


Login or Create
* Forgot password?