Принцип работы децентрализованной информационной системы денежных переводов
Автор: Коробова Л. А., Бондаренко С. С., Мухин Д. П.
Журнал: Вестник Воронежского государственного университета инженерных технологий @vestnik-vsuet
Рубрика: Экономика и управление
Статья в выпуске: 3 (93), 2022 года.
Бесплатный доступ
Статья посвящена обозрению понятия blockchain при реализации децентрализованной системы денежных переводов. Рассмотрено понятие отказоустойчивости технологии криптовалюты и приведены некоторые аспекты решения отказоустойчивости. Проведен анализ информационной безопасности предприятий. Затронуты вопросы анонимности банковских систем. Показана зависимость анонимности банковской системы от качества программного обеспечения и от политики безопасности. Даются рекомендации решения проблемы анонимности, в частности генерация приватного ключа или встраивание алгоритма соединения транзакций. Рассмотрены подходы к созданию транзакций. Приведены примеры алгоритмов, позволяющих проводить защиту транзакций пользователей. Проведено описание структуры blockchain и алгоритма консенсуса. Рассмотрены вопросы генерации цепочки блоков честного пользователя и цепочки блоков злоумышленника. Проведена формализация оценки вероятности безубыточности транзакции. Для оценки использовано биноминальное случайное блуждание. Так же обосновано окончание процесса транзакции, как ожидание добавления новых блоков в цепочку честного пользователя. Для идентификации принадлежности транзакции публичному ключу используют цифровую подпись. Рассмотрены процессы подписания транзакции и проверки подписи. Отдельно выделены подходы, используемые при проектировании криптовалют. В сети хранится вся история транзакций, есть возможность рассчитать баланс общей суммы поступающих средств и трат денег. Данные подходы представляют собой программные решения, основанные на теории игр и криптографии. Главное внимание обращается на бизнес-ценности криптовалют и способы их достижения. В результате сформулирован необходимый функционал программного клиента. В статье проведен тщательный анализ нового финансово-расчетного инструмента - электронных денег. Задаче разработки виртуальной платежной системы в последнее время уделяется большое внимание.
Блокчейн, децентрализованные системы, программирование, криптовалюта, крипта, транзакция, майнер
Короткий адрес: https://sciup.org/140297657
IDR: 140297657 | DOI: 10.20914/2310-1202-2022-3-337-344
Текст научной статьи Принцип работы децентрализованной информационной системы денежных переводов
Научно-технический прогресс входит во все сферы деятельности. Наиболее перспективным направлением является финтехе, в частности, платежные системы на блокчейн технологиях. Следствием совершенствования вычислительных и информационных технологий стало появление нового финансово-расчетного инструмента –
электронных денег, особенность которого заключается в возможности существования как в централизованных, так и в децентрализованных системах. Задаче разработке децентрализованной платежной системы в последнее время уделяется большое внимание в специализированной литературе [1–3].
This is an open access article distributed under the terms of the Creative Commons Attribution 4.0 International License
В социальной сфере востребована услуга анонимной и отказоустойчивой системы оплаты. В случае с банковскими системами такой точкой отказа является само предприятие банка. Анонимность в банковских системах зависит от политик информационной безопасности самого предприятия и от качества программного обеспечения.
Технология криптовалют решает данные проблемы иначе.
Проблема отказоустойчивости решается созданием децентрализованной сети. Эти сети еще называют Peer to Peer или Р2Р. Теперь не конкретное предприятие совершает транзакцию пользователя, а участник сети. Таким образом, решается проблема отказоустойчивости. Решение этой проблемы проиллюстрировано на рисунке 1.


Рисунок 1. Отличие децентрализованных подходов и централизованных
Figure 1. The difference between decentralized approaches and centralized

Рисунок 2. Подходы к созданию транзакций
Figure 2. The difference between business processes
Проблему анонимности в банковской среде трудно решить окончательно, так как у третьих лиц всегда имеется возможность узнать личные данные пользователя, или воспользоваться уязвимостями информационных систем. По этой причине и пользователю приходится доверять организации банка и надеяться, что его личные данные не будут использоваться в корыстных целях.
Проблема анонимности решается за счет того, что при регистрации пользователя в децентрализованной системе, не нужно указывать свои личные данные. Достаточно сгенерировать
Коробова Л.А. и др. Вестник ВГУИТ, 2022, Т. 84, №. 3, С. приватный ключ, который будет являться секретом пользователя для подтверждения денежного перевода. И публичный ключ, который будет являться адресом, на который имеется возможность перевести деньги. Таких пар ключей у пользователя может быть несколько для разных целей. Данный подход проиллюстрирован на рисунке 2 [4, 5].
Также можно встроить алгоритм JoinCoin, который позволяет соединять транзакции. Теперь злоумышленник не может однозначно связать информацию о покупке с конкретным лицом.

Рисунок 3. Пример применения JoinCoin
Figure 3. Example of using the JoinCoin algorithm
Чтобы объяснить это рассмотрим рисунок 3. Люди на рисунке обозначают публичные ключи (адресаты), причем несколько публичных ключей может принадлежать одному физическому лицу. Стрелками обозначены направления денежных переводов. Информация о транзакциях означена в прямоугольниках. На текущий момент уже не известно, происходит перевод другому физическому лицу или самому себе по разным счетам. Если произошел перевод между физическими лицами, также не известно с какой целью был произведен перевод, за оказание услуги, перевод зарплаты, или акт дарения денежных средств. Кроме этого, неизвестна точная конечная сумма, так как транзакции можно вложить друг в друга благодаря механизмам JoinCoin и UTXO. Данные механизмы опциональны, т. е. присутствует определенная нечеткость выбора одного из нескольких возможных способов действий. Любая неопределенность ведет к возникновению споров и конфликтов [8]. Для разрешения конфликтных ситуаций можно использовать более прозрачные способы оплаты [9, 10].
Чтобы создать децентрализованную сеть, требуется определить протокол транспортного уровня и протокол per to peer. Протоколом сетевого уровня может являться, например: TCP, UDP. Для протокола peer to peer сети может подойти Gossip. Цели протокола peer to peer:
-
1) обнаружение участников децентрализованной сети;
-
2) маршрутизация – поиск ближайших соседей для эффективной отправки сообщений;
-
3) идентификация участника по публичному ключу.
Очевидно, что теперь нет единой базы данных, в которой бы поддерживался актуальный баланс счетов. Для решения этой задачи можно использовать структуру blockchain и алгоритм консенсуса.

Рисунок 4. Пример хранения цепочки блоков
Figure 4. Visualization of an example of blockchain storage and block Structure
На рисунке 4 представлены механизм blockchain (хранение цепочки блоков) и структура одного блока. В блоке выделены следующие элементы: транзакции, производимые пользователями (t1, t2, t3, t4, t5, t6), ссылка на предыдущий блок, hash текущего блока, индекс, временная метка, индивидуальный (уникальный) номер – случайное число. Ссылкой на предыдущий блок является hash. Таким образом, выстраивается цепочка блоков. Данная цепочка распространяется ближайшим участникам сети. Самая длинная цепочка является актуальной, не актуальные цепочки не принимаются во внимание. Для проверки блоков можно применить алгоритм РоW (Prof of Work).

Рисунок 5. а) алгоритм Prof of Work и б) алгоритм консенсуса
Figure 5. a) РоW algorithm and b) Consensus algorithm
На рисунке 5 видно, что «Добыча блока» это цикличный и трудоемкий процесс, который и является доказательством работы алгоритма РоW. Инициализация работы алгоритма РоW является защитой от злоумышленников, которые захотят изменить цепочку блоков с целью выгоды. Так как добыча блоков это долгий процесс, то с увеличением числа блоков все менее целесообразно подменить транзакцию. Для того, чтобы был стимул поддерживать систему, майнерам (добытчикам блока) выплачивается комиссия за успешную генерацию блока.
Обсуждение
Генерацию блоков «честной» цепочки и цепочки блоков злоумышленника (атакующего) оценивают биномиальным случайным блужданием. Изменение расширения цепочки блоков на один со знаком «+» (+1), определяется как событие успеха или увеличение преимущества «честной» цепочки. По аналогии, изменение цепочки блоков на один блок со знаком «–» (-1), определяется как событие неудачи или расширение цепочки злоумышленника (атакующего) на один блок.
Вероятность безубыточности транзакции, или вероятность того, что атакующий когда-либо догонит «честную» транзакцию, начиная с z блоков ( q z ), определим следующим выражением:
1, если p < q q = < ^,
(q / p) , если p > q где p – вероятность, что «честная» цепочка не изменена с целью выгоды, q – вероятность, что злоумышленник найдет следующий блок, z – количество блоков транзакции. Значение потенциального прогресса злоумышленника можно оценить по распределению Пуассона с ожидаемым значением X = zq/p .
Вероятность того, что атакующий все еще может догнать, умножаем распределение Пуассона для каждой величины прогресса, который он мог бы достичь, на вероятность того, что он сможет догнать с определенной точки:
^ X k Кe"X ( q / p )( z k ) если k < z
-
k = о k ! 1 если k > z
где k - счетчик блоков транзакции k = 1, .
Применим к предыдущей формуле перестановку, с целью не допустить суммирования бесконечного хвоста распределения. Таким образом, получаем следующую формулу для расчета вероятности того, что злоумышленник совершит успешную атаку на «честную» транзакцию, i-'L ^^ (i-(q / p V-*'), k = 0 k !
где k - счетчик блоков транзакций k = 1, z [6-8].
Исходя из этого, процессом подтверждения транзакции является ожидание добавления нескольких новых блоков в цепочку. Это гарантирует то, что данная транзакция не будет изменена злоумышленником. Процесс подтверждения транзакции представлен на рисунке 6.
На рисунке 6 можно заметить новый элемент – цифровая подпись. Данный механизм, требуется для идентификации принадлежности транзакции публичному ключу (адресу пользователя), а также подтверждение того факта, что данные транзакции не были изменены в процессе добычи блоков другим участником сети.


Рисунок 6. Процесс работы с транзакциями
Figure 6. Transaction lifecycle


Рисунок 7. Алгоритм работы электронной подписи
Figure 7. Algorithm of digital signature operation
На рисунке 7 показаны процессы подписания транзакции и проверки подписи. Если проверка подписи пройдена, это означает, что только владелец секретного ключа мог создать данную транзакцию. Следовательно, злоумышленник не сможет перевести деньги с нашего счета в децентрализованной сети.
Узнать баланс можно посчитав разность между общей суммой поступающих средств и трат денег. Это можно реализовать, так как в сети хранится полная история транзакций.
Определим необходимый функционал программного клиента:
-
1) генерация пары ключей;
-
2) импорт пары ключей;
-
3) экспорт пары ключей;
-
4) получение списка пиров (клиентов участвующих в сети);
-
5) подключение к пирам;
-
6) публикация списка знакомых клиенту пиров;
-
7) опрос пиров;
-
8) получение транзакции и передача другим пирам;
-
9) создание транзакции и передача другим пирам;
-
10) подтверждение транзакции;
-
11) расчет текущего баланса;
-
12) добавление нового блока в цепочку;
-
13) публикация своего блокчейна;
-
14) добыча блока.
Замечание . В блоке указывается много транзакций, так как требуется провести большой объем работы, для этого и привлекаются майнеры.
Если транзакций больше чем нужно, то они ранжируются в зависимости от предложенной клиентом комиссии. Список транзакций называют transaction pool [10–20].
Рассмотрим пример работы децентрализованной сети, представленной на рисунке 8. «Node 1» отправляет транзакцию майнерам. Майнеры распространяют транзакцию на другие пиры. «Mainer 1» успел найти блок первым, поэтому отправляет блок остальным пирам, в том числе «Mainer 2» и «Node 1». «Mainer 2» в свою очередь пересылает блок «Node 3». «Node 1» ожидает N новых блоков, пока не проверит легитимность транзакции.

Рисунок 8. Пример работы децентрализованной сети Figure 8. Example of a decentralized network messaging
Заключение
В статье проведен анализ работы децентрализованной платежной системы. Рассмотрены алгоритмы реализации бизнес-процессов, а также механизмы защиты распределенной информационной системы.
Список литературы Принцип работы децентрализованной информационной системы денежных переводов
- Чащин В.П., Гудков А.Б., Попова О.Н., Одланд И.О. и др. Характеристика основных факторов риска нарушений здоровья населения, проживающего на территориях активного природопользования в Арктике // Экология человека. 2014. № 1. С. 3-12.
- Конторович А.Э., Коржубаев А.Г., Эдер Л.В. Прогноз глобального энергообеспечения: методология, количественные оценки, практические выводы // Минеральные ресурсы России. Экономика и управление: сетевой журн. 2006. № 5. URL: http://www.vipstd.ru/gim/content/view/90/278
- Раскина Т.А., Пирогова О.А., Зобнина О.В., Пинтова Г.А. Показатели системы остеокластогенеза у мужчин с различными клиническими вариантами анкилозирующего спондилита // Современная ревматология. 2015. Т. 9. № 2. С. 23-27. https://doi.org/10.14412/1996-7012-2015-2-23-27
- Терещенко Ю.В. Трактовка основных показателей вариабельности ритма сердца // Новые медицинские технологии на службе первичного звена здравоохранения: материалы межрегиональной конференции. Омск, 2010. С. 3-11.
- Абдурахманов Г.М., Лопатин И.К. Основы зоологии и зоогеографии. Москва: Академия, 2001. 496 с.
- Иванова А.Е. Проблемы смертности в регионах Центрального федерального округа // Социальные аспекты здоровья населения. 2008. № 2. URL: http://vestnik.mednet.ru/content/view54/30
- ГОСТ 8.586.5-2005. Государственная система обеспечения единства измерений. Измерение расхода и количества жидкостей и газов с помощью стандартных сужающих устройств. М.: Стандартинформ, 2007. 143 c.
- Mbiti I., Weil D.N. Mobile banking: The impact of M-Pesa in Kenya // African successes, Volume III: Modernization and development. University of Chicago Press, 2015. P. 247-293.
- Aker J.C. et al. Payment mechanisms and antipoverty programs: Evidence from a mobile money cash transfer experiment in Niger // Economic Development and Cultural Change. 2016. V. 65. №. 1. P. 1-37.
- Tapscott A., Tapscott D. How blockchain is changing finance // Harvard Business Review. 2017. V. 1. №. 9. P. 2-5.
- Carling J. Scripting remittances: Making sense of money transfers in transnational relationships // International migration review. 2014. V. 48. P. S218-S262. https://doi.org/10.1111/imre.12143
- Kirui O.K., Okello J.J., Nyikal R.A., Njiraini G.W. Impact of mobile phone-based money transfer services in agriculture: evidence from Kenya // Quarterly Journal of International Agriculture. 2013. V. 52. №. 892-2016-65177. P. 141-162. https://doi.org/10.22004/ag.econ.173644
- Bryans D. Bitcoin and money laundering: mining for an effective solution // Ind. LJ. 2014. V. 89. P. 441.
- Kikulwe E.M., Fischer E., Qaim M. Mobile money, smallholder farmers, and household welfare in Kenya // PloS one. 2014. V. 9. №. 10. P. e109804. https://doi.org/10.1371/journal.pone.0109804
- Hashemi Joo M., Nishikawa Y., Dandapani K. Cryptocurrency, a successful application of blockchain technology // Managerial Finance. 2020. V. 46. №. 6. P. 715-733. https://doi.org/10.1108/MF-09-2018-0451
- Swan M. Anticipating the economic benefits of blockchain // Technology innovation management review. 2017. V. 7. №. 10. P. 6-13.
- Suri T. Mobile money // Annual Review of Economics. 2017. V. 9. P. 497-520. https://doi.org/10.1146/annurev-economics-063016-103638
- Wakadha H., Chandir S., Were E.V., Rubin A. et al. The feasibility of using mobile-phone based SMS reminders and conditional cash transfers to improve timely immunization in rural Kenya // Vaccine. 2013. V. 31. №. 6. P. 987-993. https://doi.org/10.1016/j.vaccine.2012.11.093
- Larios-Hernández G.J. Blockchain entrepreneurship opportunity in the practices of the unbanked // Business Horizons. 2017. V. 60. №. 6. P. 865-874. https://doi.org/10.1016/j.bushor.2017.07.012
- Poongodi M., Sharma A., Vijayakumar V., Bhardwaj V. et al. Prediction of the price of Ethereum blockchain cryptocurrency in an industrial finance system // Computers & Electrical Engineering. 2020. V. 81. P. 106527. https://doi.org/10.1016/j.compeleceng.2019.106527