МОДЕЛЬ БЛОКЧЕЙН-АНАЛИЗА ДЛЯ ДОРОЖНО-ПАТРУЛЬНОЙ СЛУЖБЫ
![](https://www.internauka.org/media/cache/resize_crop/rc/QzLrzQO1/edition/cover/journal/journal-22%28245%29.png)
МОДЕЛЬ БЛОКЧЕЙН-АНАЛИЗА ДЛЯ ДОРОЖНО-ПАТРУЛЬНОЙ СЛУЖБЫ
Бильгаева Людмила Пурбоевна
канд. техн. наук, доц., Восточно-Сибирский государственный университет технологий и управления,
РФ, г. Улан-Удэ
Барлуков Андрей Валерьевич
студент, Восточно-Сибирский государственный университет технологий и управления,
РФ, г. Улан-Удэ
BLOCKCHAIN-ANALYSIS MODEL FOR ROAD PATROL SERVICE
Ludmila Bilgaeva
Candidate of technical sciences, associate Professor, East Siberia State University of Technology and Managemen,
Russia, Ulan-Ude
Andrey Barlukov
Student, East Siberia State University of Technology and Management,
Russia, Ulan-Ude
АННОТАЦИЯ
Статья посвящена разработке модели Блокчейн-анализа для ее применения в дорожно-патрульной службе. Разработаны алгоритмы создания Блокчейн и Блокчейн-анализа. На их основе разработано программное приложение на языке программирования Python, в котором реализована возможность регистрации транзакций, их обработки и получения списка подтвержденных транзакций. Здесь транзакции – это события, происходящие в дорожно-патрульной службе, такие, как регистрация транспортных средств, дорожно-транспортных происшествий, нарушений правил дорожного движения. В работе приведены результаты вычислительных экспериментов, подтверждающие корректность принятых решений.
ABSTRACT
The article is devoted to the development of a Blockchain-analysis model and its application in the road patrol service. Algorithms for creating Blockchain and Blockchain-analysis developed. Based on them, a software application developed in the Python programming language, which implements the possibility of registering transactions, processing them, and obtaining a list of confirmed transactions. Here, transactions are events that take place in the traffic police, such as the registration of vehicles, traffic accidents and traffic violations. The paper presents the results of computational experiments confirming the correctness of the decisions made.
Ключевые слова: блокчейн, одноранговая сеть, хеш-функция, транзакция, консенсус.
Keywords: blockchain, peer-to-peer network, hash function, transaction, consensus.
Введение
Сегодня сложно представить любую сферу деятельности человека без информационных технологий, развитие которых продолжается и приводит к новым реалиям жизни. Это относится и к технологии Блокчейн, которая хорошо зарекомендовала себя в тех областях, где требуется безопасный обмен большими данными в режиме реального времени. Развитие технологии Блокчейн набирает обороты и уже известно ее использование в таких сферах, как промышленность, здравоохранение, розничная торговля, онлайн-голосование и т.д.
В данной работе предлагается применение технологии Блокчейн в дорожно-патрульной службе (ДПС). Зоной ответственности этой службы является обеспечение безопасности дорожного движения [1], имеющей серьезное социальное и экономическое значение во всем мире с момента появления первых автотранспортных средств по сегодняшний день. Однако, несмотря на регулирование дорожного движения, ежедневно совершаются тысячи дорожно-транспортных происшествий, что приводит к сотням пострадавших.
В настоящее время известны такие программные средства, используемые в Соединенных штатах Америки, как «Analysis with Big Data» (штат Теннесси) и «Daily Crash Analysis Map» (Индиана). В основе первой программы лежат большие данные для анализа аварийных ситуаций на дорогах с целью предотвращения дорожно-транспортных происшествий (ДТП). Вторая программа реализована в виде карты анализа аварийности, позволяющая получить сведения о наиболее опасных участках дороги [2].
Отсутствие сведений по применению технологии Блокчейн в работе ДПС обуславливает актуальность данного исследования. В работе предлагается автоматизировать процесс анализа данных в деятельности ДПС путем применения Блокчейн-анализа. Такой подход позволит повысить оперативность проведения мероприятий, связанных с различными событиями, происходящими в этой сфере, тем самым повысить эффективность работы сотрудников ДПС.
Основы теории Блокчейн
Блокчейн представляет собой систему, состоящую из непрерывной последовательной цепочки связанных блоков, содержащих информацию по совершенным ранее транзакциям. Под транзакцией понимается операция по сохранению какой-либо информации в Блокчейн. Участниками Блокчейн являются пользователи, называемые узлами, являющихся компонентами одноранговой компьютерной сети. Каждая операция внутри сети используется с применением асимметричной системы шифрования и хеширования для достоверной идентификации отправителя и получателя. Когда один из узлов пытается добавить в Блокчейн информацию, он формирует новый блок и при помощи определенного алгоритма добавляет его в текущую цепь блоков [3].
Каждый блок Блокчейн имеет собственный уникальный идентификатор, необходимый для быстрого отличия данных друг от друга. Для идентификации блоков применяется хеш, который создается при помощи криптографической хеш-функции. В данной работе используется хеш-функция SHA-256, которая преобразует данные переменной длины в строку из 64 символов (хеш), размер которой составляет 256 бит [4]. Сам Блокчейн представляет собой распределенную базу данных, состоящей из трех основных частей: блока, цепочки, сети. Здесь каждый блок содержит информацию о транзакциях, совершенных за определенный период времени. Размер блока, период времени накопления данных о транзакциях различаются в зависимости от реализации Блокчейн. Помимо собственного хеша, каждый блок включает в себя хеш предыдущего блока, который хранится в заголовке блока. Заголовок содержит также идентификатор блока, идентификатор предыдущего блока, временную метку (время генерации блока) и число Nonce. Кроме заголовка блоки включают в себя список совершенных транзакций. Цепочка является хеш-числом, связывающим один блок данных с другими, объединяя их в одну цепь. Хеш нового блока создается с использованием данных предыдущего блока. Благодаря этому она позволяет объединять блоки в единую последовательную цепь, упорядоченную по времени их создания. Если внести любые правки или же добавить какую-либо информацию в любой из блоков, то хеш этого блока изменится полностью. А также изменится хеш всех последующих блоков, что приведет к недействительности всей цепочки блоков, начиная с измененного блока. Для исправления «испорченной» (недействительной) цепочки единственным способом является пересчет всех последующих блоков с помощью генерации нового значения числа Nonce. Поскольку Блокчейн представляет собой одноранговую сеть, каждый узел которой представляет собой устройство, на котором выполняется программа. Алгоритм этих программ обеспечивает защиту всей системы. Более того каждый узел Блокчейн хранит копии всех транзакций, совершенных за весь период времени [5].
Обычно первый блок Блокчейн определяется вручную, либо с помощью какой-либо логики и называется «Генезис-блоком» или нулевым блоком. Каждый последующий блок связан с предыдущим посредством хеша блока-предшественника.
Проверка и подтверждение правильности транзакций в Блокчейн выполняется с помощью алгоритм консенсуса, что обеспечивает целостность и безопасность сети. Существует большое количество консенсусных алгоритмов [6]. В данной работе используется алгоритм Proof of Work (PoW).
Типы транзакций Блокчейн ДПС
В сфере транспортных средств одной из вариаций применения технологии Блокчейн-анализа является хранение истории эксплуатации транспортного средства в Блокчейн. Владелец транспортного средства записывает все данные в Блокчейн, например, информацию о техническом состоянии ТС, об аварии, пробеге или количестве владельцев. И в дальнейшем при продаже транспортного средства вся информация, предоставленная покупателю, будет полностью прозрачна благодаря инструментам Блокчейн-анализа. С его помощью все транзакции могут быть просмотрены, что предотвратит мошенническую деятельность. Непосредственно для дорожно-патрульной службы Блокчейн-анализу можно найти применение в установлении зон, имеющих наиболее высокую частоту нарушения правил дорожного движения, дорожно-транспортных происшествий с последующим анализом для принятия соответствующих мер по их снижению.
В работе для анализа деятельности ДПС предложены следующие типы транзакций, сохраняемые в Блокчейн: регистрация транспортных средств (ТС), регистрация дорожно-транспортных происшествий (ДТП), регистрация штрафа. На рисунке 1 представлен состав регистрируемых транзакций.
Информация из транзакций, сохраненных в Блокчейн, предоставляет возможность быстрого получения таких данных, как сведения о том или ином транспортном средстве, его владельце и статусе. Также на основе полученной информации проводится Блокчейн-анализ. Например, выявление локаций, на которых чаще всего происходят ДТП, соответственно нуждающихся в увеличении контроля над передвижением ТС и проведении соответствующих мероприятий для максимального снижения вероятности возникновения дорожно-транспортных происшествий.
Рисунок 1. Состав регистрируемых транзакций
Алгоритм создания Блокчейн ДПС
Математическая модель процесса генерации нового блока имеет вид:
, (1)
,
V256
V (2)
где: f – хеш-функция (SHA-256);
t – цель (target – производная от сложности используемого алгоритма консенсуса);
d – содержимое блока (индекс, временная метка, хеш блока, хеш предыдущего блока, список транзакций);
n – число Nonce;
V256 – вариации результата хеш-функции, размер одной вариации 256 бит;
Vt – вариации результата хеш-функции, меньших чем t или равных ему.
Таким образом, чтобы добавить новый блок к текущей цепочке блоков необходимо подтверждение блока (PoW). Для его подтверждения выполняется последовательный перебор n до тех пор, пока хеш блока не будет меньше или равен значения target.
Алгоритм создания нового блока в Блокчейн, предназначенного для ДПС, представлен на рисунке 2.
Рисунок 2. Алгоритм добавления нового блока в Блокчейн
Здесь блок 1 является нулевым, а во второй и третий блоки поступают транзакции, связанные с регистрацией ТС, ДТП и штрафов. Для добавления нового блока в цепочку необходимо проверить и подтвердить все зарегистрированные с момента добавления крайнего блока транзакций и, соответственно, вычислить хеш текущего блока. Из рисунка 2 видно, что каждый блок включает в себя число Nonce, необходимый для расчета хеша текущего блока, без внесения изменений в сам блок. При вычислении хеша блока и нахождения Nonce используется криптографическая хеш-функция SHA-256. Генерация случайного числа Nonce начинается с нуля с последующим увеличением на 1 после каждого неудачного поиска. Как только число Nonce найдено, происходит подтверждение блока и добавление к нему временной метки, позволяющей завершить формирование блока. Далее, новый блок присоединяется к текущей цепочке блоков, и все транзакции, зарегистрированные после его подтверждения, попадут из списка неподтвержденных транзакций уже в следующий блок, формирование которого начнется после добавления текущего.
Каждый из блоков включает в себя собственный индекс и список транзакций. Также каждой транзакции, как и для блоков, присваивается временная метка. Кроме этих параметров (индекса и списка транзакций) блоки хранят в себе число Nonce, хеш предыдущего блока и текущий хеш. Все параметры первого блока (генезиса) равны нулю, за исключением его хеша и списка транзакций, который является пустым. На рисунке 3 представлен пример структуры первых трех блоков, которые связаны между собой.
Рисунок 3. Пример структуры первых трех блоков Блокчейн
Количество транзакций всегда начинается с одной и может достигаться нескольких тысяч для всех блоков, кроме первого. Следует отметить, что хеш каждого блока, приведенного на рисунке 3, за исключением первого, начинается как минимум с двух нулей. Это связано с используемым алгоритмом консенсуса Proof of Work, сложность которого равна 2. Для генезис-блока PoW не применяется.
Алгоритм Блокчейн-анализа
Блокчейн-анализ выполняется на основе данных, записанных в Блокчейн в виде транзакций и сохраненных в csv-файле. Блок-схема алгоритма Блокчейн-анализа представлена на рисунке 4.
Рисунок 4. Алгоритм Блокчейн-анализа
Как видно из рисунка, в алгоритме предусмотрено построение графиков для зарегистрированных штрафов по локации и по юридическим статьям за весь период времени, в течение которого была собрана информация, а также за определенный период времени. Здесь можно определить наиболее популярные статьи, которые указываются при выписке штрафа за нарушение правил дорожного движения (ПДД). Для зарегистрированных дорожно-транспортных происшествий строятся графики ДТП по локации как за весь период времени сбора данных, так и за определенный период времени. Также предусмотрено для зарегистрированных транспортных средств построение графиков ТС по соотношению статуса, например, «На учете» или «В угоне». Временной интервал этих графиков так же варьируется от определенного периода времени до всего периода времени, в течение которого была собрана эта информация.
На рисунке 5 представлены все виды графиков, предусмотренные в алгоритме Блокчейн-анализа и реализованные в программном приложении.
а) |
б) |
в) |
г) |
Рисунок 5. Графики Блокчейн-анализа
Заключение
В ходе проведенных исследований по применению технологии Блокчейн и Блокчейн-анализа в дорожно-патрульной службе были определены основные виды транзакций, используемые в рассматриваемой предметной области, определена структура файлов хранения данных. В качестве алгоритмов хеширования и консенсуса были выбраны алгоритм SHA256 и Proof of Wok соответственно. Разработаны алгоритмы создания Блокчейн и Блокчейн-анализа, на их основе создан прототип программы на языке программирования Python, проведены вычислительные эксперименты на тестовых данных, результат которых в виде графиков представлен в работе. Использование реальных данных позволит выполнять анализ различных ситуаций в ДПС на основе таких графиков и планировать ряд мероприятий по улучшению состояния дел в данной отрасли.
Список литературы:
- Федеральный закон «О полиции» от 07.02.2011 № 3-ФЗ (последняя редакция). – Текст: электронный // КонсультантПлюс: [сайт]. – URL:
- http://www.consultant.ru/document/cons_doc_LAW_110165/ (дата обращения: 08.07.2021)
- Bergal, J. Troopers use «Big Data» to Predict Crash Sites. – Текст: электронный // Government Technology: [сайт]. – URL: https://www.govtech.com/data/troopers-use-big-data-to-predict-crash-sites.html (дата обращения: 29.04.22).
- Генкин, А. Блокчейн. Как это работает и что ждет нас завтра / А. Генкин, А. Михеев. – Москва: Альпина Паблишер, 2017. – 592 с.
- Чепкова, Т. Что такое хеширование в блокчейне? – Текст: электронный // Be in crypto: [сайт]. – 2020. – URL: https://ru.beincrypto.com/learn/chto-takoe-heshirovanie-v-blokchejne/ (дата обращения: 05.10.21).
- Blockchain. – Текст: электронный // TADVISER: [сайт]. – 2020. – URL: https://tadviser.com/index.php/Article:Blockchain (дата обращения: 28.10.21)/
- Лелу, Л. Блокчейн от А до Я. Все о технологии десятилетия. – Москва: Эксмо, 2018. – 256 с.