Главная страница
Навигация по странице:

  • Хэширование

  • Законодательства тех или иных стран не успевают за их стремительным раз витием и ростом популярности


    Скачать 1.74 Mb.
    НазваниеЗаконодательства тех или иных стран не успевают за их стремительным раз витием и ростом популярности
    Дата15.10.2022
    Размер1.74 Mb.
    Формат файлаdocx
    Имя файлаRSVPU_2018_372.docx
    ТипЗакон
    #735034
    страница3 из 17
    1   2   3   4   5   6   7   8   9   ...   17

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



      1. Описание блокчейна и технологий, использующих блокчейн в основе своей работы




        1. Описание истории развития и устройства работы технологии блокчейн



    В 2014 году на сайте Bitcoin Magazine автором Кеном Гриффитом, яв- ляющимся соучредителем компании Dinero Limited, которая представляет из себя платформу с богатым инструментарием для обмена цифровыми валюта- ми, размещена статья [48], где история блокчейна рассматривается с перио- дов до появления первой криптовалюты, начиная с идей, отдаленно напоми- нающих то, что мы видим сейчас.

    Эта же статья в дальнейшем была переведена и использована Артемом Генкиным и Алексеем Михеевым в книге «Блокчейн: Как это работает и что ждет нас завтра» [8, с. 24–25].

    Основы криптовалют были разработаны в 1992 году киберпанками — неформальной группой людей, заинтересованных в сохранении анонимности и интересующихся криптографией. В 1993 году американский программист Эрик Хьюз заявил о возможности обеспечения конфиденциальности совер- шаемых платежных операций путем многоэтапного шифрования. Затем в 1994 году американский ученый и инженер из корпорации Intel Тимоти Мэй в статье «Вопросы и ответы о криптопанке» (The Cyphernomicon) описал основные характеристики такой системы, в том числе безопасность неотсле- живаемых транзакций через их шифрование, а также транзакции, проводи- мые без посредников. Для реализации этих идей надо было создать новый

    механизм расчетов, не затрагивающий банковский сектор. Вай Дай, описав- ший концепцию криптовалюты b-money в 1998 году, предложил, по сути, ре- альный способ исполнения условий договора между анонимными участни- ками. А Девид Чауму изобрел «слепую подпись». И лишь спустя 10 лет, до- селе неизвестный человек (или группа людей) под псевдонимом Сатоши Накамото вывел в публичное пространство цифровую валюту Биткойн, опубликовав статью «Bitcoin: A Peer-to-Peer Electronic Cash System» [75] в списке рассылки о криптографии (The Cryptography Mailing list) metzdowd.com. В статье описывается децентрализованное решение с исполь- зованием идей пиринговой системы, криптографии, математических правил, таких, как например, доказательство работы (Proof-of-Work) и общих правил проведения транзакций между участниками системы. Данное решение полу- чило название блокчейн биткойна. Это событие и стало отправной точкой в развитии технологии [48], [8, с. 24], [26], [24].

    На текущий момент на свет появилось огромное количество других криптовалют, альтернатив биткойна, называемых альткойнами, что свиде- тельствует об огромной популярности данного способа обмена средства- ми [8, с. 25].

    Так, например, по состоянию на 18 декабря 2017 года капитализация валюты биткойн составляла 320 млрд долларов (по данным биржи СoinMarketCap) [59]. Для сравнения капитализация ExxonMobil, крупнейшей американской компании, по состоянию на 4 квартал 2017 года равна 350,6 млрд долларов [2].

    Поскольку блокчейн — это достаточно новая и еще развивающаяся технология, официального и исчерпывающего определения ей нет.

    В своей книге А. С. Генкин и А. А. Михеев касаются вопроса формули- ровки и приводят несколько трактовок понятия, дающие ряд деятелей, изу- чающих данную технологию [8, с. 88–92].

    Блокчейн (англ. blockchain или block chain) — выстроенная по опреде- лённым правилам непрерывная последовательная цепочка блоков (связный список), содержащих информацию [4].

    Технология надежного распределенного хранения записей обо всех ко- гда-либо совершенных транзакциях. Блокчейн представляет собой цепочку блоков данных, объем которой постоянно растет по мере добавления новых блоков с записями самых последних транзакций. Это хронологическая база данных, т.е. такая база данных, в которой время, когда была сделана запись, неразрывно связано с самими данными, что делает ее некоммутативной [24].

    Данные представлены последовательностью записей, которую можно дополнять. Записи вместе с вспомогательной информацией хранятся в бло- ках. Блоки хранятся в виде односвязного списка. Каждый участник представ- лен узлом (node), который хранит весь актуальный массив данных и контак- тирует с другими узлами. Узлы могут добавлять новые записи в конец спис- ка, а также сообщают друг другу об изменениях списка [24].

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

    В своём сайте Андерс Браунворт реализовал демоверсию блокчейна, которую можно «пощупать» и понять, как эта технология работает [56].

    В видео он рассказывает об ее устройстве, начиная с такого понятия как хэширование на примере хэш-функции SHA256.

    Не будем углубляться в процесс работы этой функции, а лишь рас- смотрим основные ее компоненты, обозначенные на рисунке 1.

    Хэширование или хеширование (англ. hashing) преобразование массива входных данных произвольной длины в (выходную) битовую строку установленной длины, выполняемое определённым алгоритмом [42].

    Функция, воплощающая алгоритм и выполняющая преобразование, называется «хэш-функцией» или «функцией свёртки» [42].

    Исходные данные называются входным массивом, «ключом» или «со- общением».

    Результат преобразования (выходные данные) называется «хэшем»,

    «хэш-кодом», «хэш-суммой», «сводкой сообщения» [42].





    Рисунок 1 Компоненты хэширования
    Представленный ниже набор символов в поле «Hash» является уни- кальным для заданного набора входных данных поля «Data». Он также может быть получен для любого другого набора входных данных.

    Однако процесс обратного извлечения входных данных с помощью имеющегося хэш-кода является задачей, требующей больших вычислитель- ных мощностей [24], [21].

    В блоке используется тот же процесс хэширования, однако входные данные разделены на четыре секции (рисунок 2):

    • «Block» номер блока в цепи;

    • «Nonce» — случайное число, которое генерируется для получения такого хэша, который удовлетворял бы заложенным разработчиками услови- ям;

    • «Data» набор данных;

    • «Prev» хэш предыдущего блока в цепи.





    Рисунок 2 — Схема блока цепи

    Базовую модель распределения данных в системе, построенной на блокчейне, можно представить в виде следующей последовательности дей- ствий:

    1. Новая транзакция отсылается всем узлам сети, сеть построена по принципу пиринговой сети, транзакция попадает в пул необработанных дан- ных на этих узлах (рисунок 3).



    Рисунок 3 Добавление транзакции в пул необработанных транзакций


    1. Определенные узлы, занимающиеся майнингом (деятельность по созданию новых структур (обычно речь идёт о новых блоках в блокчейне) для обеспечения функционирования криптовалютных платформ) (на рисунке 3 отмечены серым цветом), добавляют транзакции, расположенные в пуле необработанных данных в блок (рисунок 4).

    2. Каждый майнер ищет такое значение поля «Nonce», при котором хэш блока удовлетворял бы заданным разработчиками условиям (в блокчей- не биткойна условием было наличие в начале хэша блока определенного ко- личества нулей), данная операция называется подтверждением работы (Proof- of-work). Так же на данный момент появился другой способ подтверждения права на осуществление операции по внесению блока — метод подтвержде- ния доли (Proof-of-stake). Оба метода будут рассмотрены позже.

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



    Рисунок 4 Добавление пула необработанных транзакций в блок




    Рисунок 5 Вычисление хэша и отправка его другим узлам на проверку

    1. Узлы, получившие данный блок производят проверку на коррект- ность транзакций и отсутствие так называемой двойной траты (рисунок 6). Если блок не проходит проверку, он отбрасывается.



    Рисунок 6 Проверка блока


    1. Если достигается согласие по корректности блока, майнеры добав- ляют его в цепочку и начинают работать над новым блоком данных, осно- ванном на хэше только что добавленного блока (рисунок 7).



    Рисунок 7 — Добавление блока в цепочку

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

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

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



    Рисунок 8 Приватный и публичный ключи
    Приватный ключ принадлежит только тому пользователю, который сгенерировал его. Он не участвует в транзакциях, и его не следует разгла-

    шать никому. Он служит для осуществления подписи транзакции, однако в открытом виде не передается [21].

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



    Рисунок 9 Подпись транзакции
    На основе этих входных данных и приватного ключа формируется под- пись, а затем отправляется другим участникам для проверки и внесения тран- закции в блок.

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

    Таким образом, блокчейн уже не имеет персональных данных о лицах, передающих средства тому или иному лицу, а имеет лишь некие ключи, представляющие собой кошельки, за которыми находятся те или иные лица и подписи к каждой транзакции (рисунок 11).


    Рисунок 10 Подтверждение подписи транзакции




    Рисунок 11 Схема цепи блоков с публичными ключами и подписями в транзакциях
    Как уже было сказано выше, любое малейшее изменение входных дан- ных, будь то номер кошелька отправителя или получателя, передаваемые средства или подпись, мгновенно приведет к изменению конечного хэша и некорректности всей цепи.

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

    Если один из майнеров пытается добавить блок, не соответствующий данному правилу, то такой блок автоматически отклоняется другими участ- никами сети блокчейна. Чтобы майнер смог добавить не валидный блок, необходимо изменить хэш всех предыдущих блоков, вплоть до так называе- мого «генезис-блока» — первого блока в системе. Данный блок обычно зада- ется разработчиками системы. Из этого возникает одно из существенных свойств технологии распределенного реестра — попавшая в цепочку блоков информация не может быть изменена постфактум [24].

    Ввиду того, что в процессе майнинга пользователи стали объединяться в группы, называемые пулами, появилась возможность переписать недавно добавленный блок, однако это также является трудновыполнимой задачей, поскольку в таком случае всё равно приходится бороться с вычислительными мощностями всей остальной сети [21].

    Необходимо сказать, что добавление новых блоков майнерами проис- ходит по определенным принципам. Данные принципы были введены в си- стему для увеличения безопасности блокчейна и в то же время обеспечения децентрализации системы [24].

    На данный момент существуют два основных принципа, по которым в системе достигается консенсус по добавлению нового блока в блокчейн — это доказательство проделанной работы (Proof-of-work, или PoW) и доказа- тельство доли владения (Proof-of-stake, или PoS) [24], [44].

    Существуют также и другие алгоритмы, по которым происходит до- бавление нового блока, но описанные выше являются основными и наиболее используемыми [44].

    В связи с тем, что безопасность блокчейна не полагается на единый удостоверяющий центр, такой, например, как банк, с его инфраструктурой безопасности, то каждый из узлов данной системы не знает априори, какая версия базы данных является действительной [24]. Важно учесть то, что ре- естр обновляется на всех компьютерах в сети одновременно с определенным интервалом времени [21].

    В блокчейне биткойна безопасность сети полагается на алгоритм дока- зательства работы (PoW) в процессе майнинга блоков. Каждый узел, желаю- щий принимать участие в процессе майнинга, должен решить вычислительно сложную задачу, чтобы гарантировать действительность блока. Награда за решение автоматически начисляется майнеру новыми биткойнами [24].

    Если будет происходить атака на базу данных блокчейна, атакующий должен решить ту же задачу, что и оставшаяся часть сети, т.е. атака будет успешной, только если атакующий сможет привлечь значительные вычисли- тельные ресурсы [24], [21].

    Функционирование протокола биткойна таково, что безопасность сети поддерживается следующими ресурсами [24]:

    • специализированное оборудование для проведения вычислений;

    • электричество, необходимое для работы оборудования.

    Это делает биткойн неэффективным с точки зрения потребления ресур- сов. Для увеличения своей доли вознаграждения, майнеры в сети биткойн вынуждены участвовать в «гонке вооружений», то есть использовать всё больше ресурсов для майнинга. С одной стороны, это делает стоимость атаки на биткойн непомерно высокой. С другой, экологическое недружелюбие бит- койна привело к возникновению предложений построить подобные системы, которые требуют намного меньше ресурсов [24].

    Решением данной проблемы стал метод, основанный на алгоритме под- тверждения доли (PoS). Идея подтверждения доли такова: вместо вычисли-

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

    Логическое обоснование состоятельности алгоритма подтверждения доли заключается в следующем: пользователи с наибольшими долями в си- стеме имеют наибольший интерес в поддержании безопасности сети, так как они больше всего пострадают в случае, если репутация и стоимость крипто- валюты упадет в результате атак. Чтобы провести успешную атаку, зло- умышленник должен приобрести большую часть валюты, а это будет непо- мерно дорого, если система будет достаточно популярной [24].

    Распределённая природа баз данных делает взлом хакерами практиче- ски невозможным, поскольку для этого им нужно одновременно получить доступ к копиям базы данных на огромном количестве компьютеров в сети. DoS-атаки также становятся бессмысленными, поскольку нет единого цен- тра, который был бы подвержен отказу в обслуживании [21].

    Кроме того, в блокчейн существует возможность доработки алгоритма его работы и включения изменений в работу при условии, если они будут приняты большинством участников системы [21].

    Таким образом, технология распре деленного реестра обладает следу- ющими характеристиками [24]:

    • децентрализация;

    • открытость внесенных данных;

    • математико-криптографическая защита информации;

    • невозможность изменить единожды внесенные в систему данные.

    В различных источниках часто выделяют следующие особенности [12], [21], [8, с. 96–97]:

    • прозрачность: доступ ко всей истории событий — денежным пере- водам, соглашениям и другим записям — всегда открыт всем участникам си- стемы;

    • децентрализованность: история транзакций хранится у каждого участника на жестком диске, а не на каком-то главном сервере;

    • анонимность: для работы в блокчейне не нужно раскрывать свою личность;

    • равноправие: в блокчейне нет администраторов или хранителей ин- формации, а у всех участников одинаковый статус и возможности;

    • безопасность: никто не подделает и не подменит зафиксированную в блокчейне информацию, можно быть уверенным, что она достоверна.

    Достоинства криптовалют, согласно Т. Г. Ильиной, таковы:

    • высокая скорость операций и мобильность;

    • очень низкая стоимость эмиссии;

    • безопасность;

    • идеальная сохраняемость;

    • возможность полноценного контроля;

    • децентрализация;

    • многофункциональность;

    • универсальность;

    • независимость;

    • отсутствие инфляции;

    • открытость и публичность;

    • делимость;

    • отсутствие запретов;

    • анонимность;

    • отсутствие подделок;

    • простота, удобство и доступность;

    • возможность зарабатывать;

    • ликвидность и конвертируемость. Недостатки же у них следующие:

    • необходимость в стойкой криптографической защите;

    • необходимость в инструментах передачи, пользования и хранения;

    • отсутствие должного юридического урегулирования и гарантий;

    • недостаточная распространенность;

    • нестабильный курс;

    • вирусы и киберпреступность;

    • ограниченная эмиссия;

    • отсутствие идентификации клиента;

    • необеспеченность;

    • повышенные риски при инвестировании;

    • недостаточная изученность и отсутствие необходимой информации;

    • постоянно меняющаяся технология;

    • высокие затраты на электричество;

    • отсутствие немонетарного спроса;

    • ограниченность использования;

    • неготовность среды и потребителей для внедрения.

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

    О. А. Николайчук к достоинствам криптовалют также относит откры- тость, надежность, невозможность фальшивомонетничества. При этом надежность достигается не путем закрытости информации для остальных субъектов рынка и контроля доступа, а за счет обеспечения каждому клиенту возможности вычислить правильность транзакции.

    Кроме того, к достоинствам криптовалют можно отнести и плюсы, свойственные развитию безналичных платежей в целом, такие как:

    • отсутствие накоплений вне банковского сектора и привлечение ин- вестиций в экономику;

    • сокращение затрат общества на обработку и хранение банкнот, мо- нет, на инкассацию;

    • повышение прозрачности и безопасности платежей для всех агентов этого рынка;

    • достижение определенной собираемости налогов.

    Что касается анонимности, которую часто ставят в упрек криптовалю- там, то хочется привести цитату из заключения организации экономического сотрудничества и развития (ОЭСР): «Определение криптовалюты как сред- ства для совершения мошеннических операций является результатом оче- видного (наличия) анонимности, встроенной в систему. На самом деле наличные деньги являются еще более анонимным средством платежа, чем виртуальные валюты… Если имя и адрес (владельца) однажды будут иден- тифицированы законодательными органами, то они включат мощный меха- низм, позволяющий отследить все цепочки передачи ценности, что никогда не позволили бы сделать наличные деньги. Аргументы, используемые против анонимности криптовалют, намного слабее, чем против наличных средств».

    Как далее отмечает ОЭСР, в отличие от национальной валюты, крипто- валюта не обеспечена полным признанием и доверием национального прави- тельства, при этом она не регулируется его постановлениями, ограничиваю- щими какие-либо действия (например, внезапную гиперэмиссию этой валю- ты). Однако поскольку покупатель ожидает, что другие участники примут ту же криптовалюту в качестве средства сбережения, он будет готов купить ее.

    По мнению ОЭСР, есть другой риск: что определенные правительства попытаются принять меры, эффективно исключающие использование вирту- альной валюты в качестве валюты как таковой. Это подразумевает вероят- ность того, что криптовалюта будет объявлена вне закона. В докладе ОЭСР есть такие слова: «Даже если виртуальная валюта не объявлена незаконной, само обсуждение этой возможности наносит убытки взаимному доверию к будущей покупательной силе виртуальной валюты, которая необходима для обеих сторон сделки, чтобы рассматривать ее в качестве средства сбереже- ния». Ниже в главах о российском регулировании мы увидим всю горькую справедливость этих слов [8, с. 81–84].
        1. 1   2   3   4   5   6   7   8   9   ...   17


    написать администратору сайта