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

Статья опубликована в рамках: Научного журнала «Студенческий» № 40(210)

Рубрика журнала: Информационные технологии

Скачать книгу(-и): скачать журнал часть 1, скачать журнал часть 2, скачать журнал часть 3, скачать журнал часть 4, скачать журнал часть 5, скачать журнал часть 6, скачать журнал часть 7, скачать журнал часть 8

Библиографическое описание:
Плужников А.Ю., Стачев А.А. РЕАЛИЗАЦИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ДЛЯ ПОДДЕРЖАНИЯ ОБУЧЕНИЯ ТЕХНОЛИГИИ БЛОКЧЕЙН // Студенческий: электрон. научн. журн. 2022. № 40(210). URL: https://sibac.info/journal/student/210/272994 (дата обращения: 11.05.2024).

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

Плужников Алексей Юрьевич

студент, МИРЭА – Российский технологический университет,

РФ, г. Москва

Стачев Александр Алексеевич

студент, МИРЭА – Российский технологический университет,

РФ, г. Москва

Паршенкова Юлия Анатольевна

научный руководитель,

ассистент, МИРЭА – Российский технологический университет,

РФ, г. Москва

АННОТАЦИЯ

Одной из самых популярных информационных технологий на данный момент, является технология блокчейн.  Данная технология позволяет бороться с несанкционированным изменением или удалением данных, что является серьезной проблемой в различных сферах, связанных с информацией. Для демонстрации работы приложений связанных с блокчейн технологиями необходимо использовать наглядные и понятные механизмы работы. В данной статье рассмотрена применение имитатора работы алгоритма Proof of Work в демонстраторах работы блокчейн сети.

 

Ключевые слова: блокчейн; образование.

 

Введение. Техническое сообщество все чаще сталкивается с необходимостью демонстрации новых, высокоэффективных алгоритмов. Все чаще мы слышим о технологии блокчейн, которая нашла для себя применение не только в криптовалютах, но и во множестве других сфер, связанных с хранением и обменом информации. Для обеспечения понимания, а также возможности продемонстрировать непосредственно функционирующую систему, построенную на основе технологии блокчейн, необходимо избрать наиболее эффективные и наглядные методы. Стоит учесть, что технология блокчейн является очень гибкой и может включать в себя десятки различных вариаций, каждая из которых решает задачи определенной проблемной области.

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

Рисунок 1. Общая схема цепи блоков и их связи

 

Алгоритм Proof of Work. Наиболее популярным алгоритмом валидации блоков в сети блокчейн является алгоритм Proof of Work или же алгоритм «подтверждение работы». Суть данного алгоритма заключается в генерации хеша, удовлетворяющего условиям выбранной сети. Множество пользователей совершают работу по поиску данного хеша, пропуская входные данные с изменяемым параметром через заданную хеш функцию, с целью первым получить правильный результат. Первым и самым известным блокчейном, использующим алгоритм подтверждения работы, является Bitcoin. Создание новых блоков в данной сети происходит каждые 10 минут, а регулирование сложности вычислений напрямую зависит от количества мощностей, единовременно вычисляющих значения хеш функций. Условием правильности искомого хеша, является наличие некоторого количества нулей в результате работы хеш функции SHA-256. Хеш функция SHA-256 есть ничто иное как алгоритм преобразование входной последовательности любой длинны в выходную последовательность фиксированной длинны, при этом стоит учесть, что данный процесс односторонний то, есть исключает расшифровку хеша в исходную последовательность, а также что результат работы хеш функции однозначен для двух одинаковых входных последовательностей [3]. Например, входная последовательность «Привет» преобразуется алгоритмом SHA-256 в выходную последовательность «dd679c0b9fd408a04148aa7d30c9df393f67b72 27f65693fffe0ed6d0f0ade59» в любой момент времени и на любом вычислительном устройстве. Для того, чтобы хеш изменялся и с его помощью можно было подтвердить работу, был введен тот самый изменяемый параметр под названием Nonce (аббревиатура от «number that can only be used once», что переводится как «число, которое используется один раз»). Пользователи вычисляют значение хеш функции изменяя значение Nonce до тех пор, пока не найдут такой хеш, который удовлетворяет условию. Как и говорилось ранее, главным условием сети является некоторое количество нулей в начале хеша. Количество нулей определяется тем сколько мощностей готово производить поиск нужного хеша, сделано это для сохранения 10 минутного интервала между созданием блоков. Из-за фиксированной длины выходной последовательности хеш функции, количество нулей прямо влияет на сложность вычислений так, как чем больше количество тех нулей, которые должны находиться в начале строки, тем меньше количество комбинаций удовлетворяющим условию системы, что влечет за собой увеличение времени поиска необходимой комбинации.

Имитатора работы алгоритма Proof of Work. Для демонстрации работы блокчейн сети в рамках внедрения данной технологии в отдельные программные средства, не требуется разворачивание полноценной сети с множественным количеством узлов. Реализация такой сети может быть выполнена в виде программной имитации, в которой несколько узлов реализованы в виде отельных динамических списков, процесс майнинга разнесен на несколько потоков, а работа алгоритма Proof of Work упрощена ради ускорения работы. Упрощение работы в демонстрационном ПО не является критичным поскольку задача такого ПО лишь показать возможности, а не продемонстрировать полноценную работу технологии. Схема функции имитатора алгоритма Proof of Work для одного потока изображена на рисунке 2.

Рисунок 2. Схема имитатора алгоритма Proof of Work

 

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

Во время использования данного метода на нескольких демонстраторах было выявлено, что для сохранения наглядности и высокой скорости вычислений, целесообразно использовать алгоритм, чьей целью является поиск от 3 до 5 нулевых символов в начале последовательности хеша.

Заключение. В данной статье были рассмотрены основные принципы работы алгоритма Proof of Work, рассмотрены особенности работы имитации такого алгоритма в демонстрационном ПО, а также экспериментально выявлена оптимальная конфигурация работы данного алгоритма.

 

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

  1. Плужников, А. Ю. Методика обучения технологии блокчейн / А. Ю. Плужников // Студенческий. – 2022. – № 25-1(195). – С. 34-36. – EDN ZCHQDF.
  2. Унижаев Н. В. Методика расчета затрат необходимых для обучения технологии блокчейн //Наука, образование, общество: тенденции и перспективы. – 2018. – С. 109-112.
  3. Martino R., Cilardo A. Designing a SHA-256 processor for blockchain-based IoT applications //Internet of Things. – 2020. – Т. 11. – С. 100254.

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

Форма обратной связи о взаимодействии с сайтом
CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.