Поздравляем с Днем Российской науки!
   
Телефон: 8-800-350-22-65
WhatsApp: 8-800-350-22-65
Telegram: sibac
Прием заявок круглосуточно
График работы офиса: с 9.00 до 18.00 Нск (5.00 - 14.00 Мск)

Статья опубликована в рамках: XXXIX Международной научно-практической конференции «Вопросы технических и физико-математических наук в свете современных исследований» (Россия, г. Новосибирск, 26 мая 2021 г.)

Наука: Технические науки

Секция: Информатика, вычислительная техника и управление

Скачать книгу(-и): Сборник статей конференции

Библиографическое описание:
Мартиросян А.В. ПРЕИМУЩЕСТВА ВНЕДРЕНИЯ БЛОКЧЕЙН ТЕХНОЛОГИЙ В ОНЛАЙН МАГАЗИНЫ // Вопросы технических и физико-математических наук в свете современных исследований: сб. ст. по матер. XXXIX междунар. науч.-практ. конф. № 5(31). – Новосибирск: СибАК, 2021. – С. 77-82.
Проголосовать за статью
Дипломы участников
У данной статьи нет
дипломов

ПРЕИМУЩЕСТВА ВНЕДРЕНИЯ БЛОКЧЕЙН ТЕХНОЛОГИЙ В ОНЛАЙН МАГАЗИНЫ

Мартиросян Александр Ваникович

cтудент, Национальный политехнический университет Армении,

Армения, г. Ереван

ADVANTAGES OF IMPLEMENTING BLOCKCHAIN TECHNOLOGIES IN ONLINE STORES

 

Aleksandr Martirosyan

Student, National Polytechnic University of Armenia,

Armenia, Yerevan

 

Вступление. В наши дни финансовые транзакции в Интернете стали очень популярными, и параллельно с их модернизацией вырос спрос на безопасность и надежность. В то же время очень популярными стали криптовалюты, работающие в системе блокчейн, наиболее известными из которых являются биткойн, эфир и лайткойн. В качестве сервера для решения проблемы была выбрана система блокчейн, поскольку она гарантирует безопасность, прозрачность и надежность транзакций. Блокчейн-система - единственная децентрализованная система, которая смогла решить проблему двойных расходов [1] в этих системах. Блокчейн-система Ethereum позволяет нам не только осуществлять финансовые переводы, но и создавать децентрализованные приложения с помощью смарт-контрактов [2], которые после размещения в блокчейне будут работать без мошенничества и вмешательства тртьей стороны.

Используя возможности блокчейн-системы Etherum, была разработана торговая система интернет-магазинов, в которой минимизированы риски, возникающие при покупках.

Примером такого мошенничества может быть перевод денег покупателем продавцу, неполучив ничего взамен.

Блокчейн. Блокчейн - это цепочка непрерывных информационных блоков, построенных по определенным правилам[3]. Каждый блок содержит:

  • ID - номер блока,
  • Nonce - число, которое майнеры находят при майнинге,
  • Data - в которых хранятся данные,
  • Previous hash - хеш предыдущего блока,
  • Hash - хеш данного блока.

Упрощенная версия блокчейна показана ниже (Рисунок 1).

 

Рисунок 1.

 

Исключением является первый блок, previous hash которого состоит из нулей. Изменение любых данных в блоке приводит к изменению его хеш-значения.

Действия по созданию новых блоков (вычисление хеш-значения), которые выполняются для обеспечения работы криптовалют, называется майнингом[4]. Людей, которые занимаются майнингом, называют майнерами.

Процесс создания блоков:

  • Заранее указывается сложность майнинга, которая представляет собой количество начальных нулей требуемого значения хеш-функции. Чем больше число, тем сложнее найти подходящий хеш.
  • Затем берутся идентификатор блока, хеш-значение предыдущего блока (previous hash) и информация, которая должна быть записана в данный блок (Data).
  • Далее майнеры начинают методом поиска, каждый раз изменяя значение Nonce, подсчитать хеш блока (с использованием алгоритма SHA-256[5]), пока он не удовлетворит заданную сложность.
  • Как только хеш найден, одобренный другими майнерами, он добавляется в цепочку блоков в качестве нового блока, а майнеры, которые находят хеш, получают вознаграждение в виде криптовалюты.

Такой процесс создания, проверки и награждения блоков называется proof-of-work[6].

Блокчейн Ethereum. Одним из преимуществ блокчейна Ethereum [7] является короткое время создания блоков и сравнительно большой объем блока, что позволяет записывать больше информации в блоки за более короткое время. Блокчейн Ethereum включает в себя возможность писать программы или, другими словами, смарт-контракты[8], которые будут работать в блокчейне. Основной используемый язык программирования - Solidity. Если в блокчейн в коде вносятся изменения, они записываются в новый блок как транзакция. Чтобы не перегружать блоки из-за больших вычислений или прерываться, например, из-за бесконечных циклов, работа любой функции, которая может вызвать транзакцию, потребляет соответствующий газ. Газ - это платеж, необходимый для успешной транзакции на платформе блокчейна Ethereum. Gas используется для распределения ресурсов виртуальной машины Ethereum (EVM), чтобы децентрализованные приложения, такие как смарт-контракты, могли выполняться самостоятельно безопасным и децентрализованным образом.

Суть проблемы. Чтобы сделать покупки в интернет-магазинах более прозрачными и безопасными, было предложено создать учетную запись Escrow. Он будет работать на блокчейне Ethereum на языке программирования Solidity, и любой токен стандарта ERC20 будет использоваться в качестве валюты.

Условное депонирование(Escrow) - это система (специальный счет), в которой финансовый инструмент или актив хранится у третьей стороны до тех пор, пока не будут выполнены все условия. Другими словами, гарантом транзакции является третья сторона, называемая Escrow агент.

ERC20 - это стандарт взаимозаменяемых токенов. Другими словами, у них есть свойство, которое делает каждый токен таким же (по типу и значению), что и другой токен. Он предоставляет такие функции, как передача токенов из одной учетной записи в другую, получение токенов текущей учетной записи и получение общего количества токенов, доступных в сети. Кроме того, у него есть некоторые другие функции. Например, разрешение на то, что определенная сумма денег на счете может быть потрачена третьим лицом.

Решение проблемы. Для решения проблемы была предложена следующая версия с условным депонированием.

  1. У продавца должен быть адрес лица, принимающего решение, и максимальное время, в течение которого товар должен быть доставлен покупателю. В случае разногласий между продавцом и покупателем, лицо, принимающее решение, должно принять решение о переводе денег одному из них. Желательно, чтобы адрес лица, принимающего решение, был из списка доверенных адресов.
  2. Покупатель создает новый платеж для совершения покупки у продавца и переводит сумму в смарт-контракт.
  3. После того, как продавец отправит товар и покупатель подтвердит получение, продавец должен обратиться в смарт-контракт для получения денег.
  4. Если продавец не подтвердил доставку товара, а покупатель не получил товар, то по истечении срока покупатель может обратиться в смарт-контракт и получить свои деньги обратно.
  5. Если продавец подтвердил доставку товара, но покупатель не подтвердил получение по истечении срока, лицо, принимающее решение, может принять решение о переводе денег одному из них.

Познакомимся с отдельными эпизодами кода. У нас есть 2 структуры:

  • Paymеnt
  • SellerInfo

Paymеnt структура включает платежную информацию.

  • Поле _amount описывает сумму платежа.
  • _endTime описывает окончательное время (время Unix [10]), по истечении которого покупатель или продавец будет иметь право подать апелляцию к лицу, принимающему решение, для принятия решения в их пользу.
  • _decisionMaker - адрес лица, принимающего платежное решение.
  • _deliveryApproved - логическая переменная, описывающая продукт, доходящий до получателя.
  • _provisionApproved - это тоже логическая переменная, которая описывает, как продавец безопасно отправляет продукт адресату.

В структуру SellerInfo входит информация о продавцах.

  • _decisionMaker - это адрес лица, принимающего решения при совершении покупки у данного поставщика.
  • _escrowTime - максимальное время передачи товара от продавца к покупателю в секундах.
  • _buyerAddresses - адреса покупателей продовца.
  • _buyerPaymentIds - это переменная типа "ключ-значение", где каждомы адресу покупателя соответствует набор id платежей.

Любые изменения записываются в блокчейн с помощью event-ов, которые позволяют любому видеть историю транзакций.

Заключение. Использование системы условного депонирования блокчейн в интернет-магазинах решает ряд проблем безопасности и прозрачности и имеет множество преимуществ. Среди них:

  • Прозрачность транзакций.
  • Безопасность блокчейна, что делает невозможным взлом системы.
  • Минимизация вмешательства человека.
  • Несмотря на все это, у системы есть и недостатки, которые перечислены ниже.
  • Функции, которые изменяют блокчейн и впоследствии запускают новую транзакцию, должны оплачиваться дополнительно по соответствующей цене на газ.
  • Человеческое вмешательство сведено к минимуму, но все еще существует.

 

Список литературы:

  1. Jang, Jehyuk, and Heung-No Lee. "Profitable double-spending attacks." Applied Sciences 10.23 (2020): 8477.
  2. Zou, Weiqin, David Lo, Pavneet Singh Kochhar, Xuan-Bach D. Le, Xin Xia, Yang Feng, Zhenyu Chen, and Baowen Xu. "Smart contract development: Challenges and opportunities." IEEE Transactions on Software Engineering (2019).
  3. Генкин, Артем, and Алексей Михеев. Блокчейн: Как это работает и что ждет нас завтра. Альпина Паблишер, 2017.
  4. Kroll, J. A., Davey, I. C., & Felten, E. W. (2013, June). The economics of Bitcoin mining, or Bitcoin in the presence of adversaries. In Proceedings of WEIS (Vol. 2013, p. 11).
  5. Khovratovich, Dmitry, Christian Rechberger, and Alexandra Savelieva. "Bicliques for preimages: attacks on Skein-512 and the SHA-2 family." In International Workshop on Fast Software Encryption, pp. 244-263. Springer, Berlin, Heidelberg, 2012.
  6. Nakamoto, Satoshi, and A. Bitcoin. "A peer-to-peer electronic cash system." Bitcoin.–URL: https://bitcoin. org/bitcoin. pdf 4 (2008).
  7. Maldonado, Fatima Castiglione. Introduction to Blockchain and Ethereum: Use distributed ledgers to validate digital transactions in a decentralized and trustless manner. Packt Publishing Ltd, 2018.
  8. Panescu, Adrian-Tudor, and Vasile Manta. "Smart contracts for research data rights management over the ethereum blockchain network." Science & Technology Libraries 37.3 (2018): 235-245..
  9. Takahashi, Koji. "Blockchain Technology for Letters of Credits and Escrow Arrangements." (2017).
  10. Ritchie, Dennis M., and Ken Thompson. "The UNIX time‐sharing system." Bell System Technical Journal 57.6 (1978): 1905-1929.
Проголосовать за статью
Дипломы участников
У данной статьи нет
дипломов

Оставить комментарий

Форма обратной связи о взаимодействии с сайтом