Главная страница

Блокчейн. Цихилов. Блокчейн (Цихилов). Копирование, воспроизведение и иное использование электронной книги, ее частей


Скачать 2.63 Mb.
НазваниеКопирование, воспроизведение и иное использование электронной книги, ее частей
АнкорБлокчейн. Цихилов
Дата19.07.2022
Размер2.63 Mb.
Формат файлаpdf
Имя файлаБлокчейн (Цихилов).pdf
ТипКнига
#633338
страница11 из 16
1   ...   8   9   10   11   12   13   14   15   16
Тьюрингу». Что это означает?
В 1936 году Алан Тьюринг, будущий герой криптографической войны с германским шифровальным устройством «Энигма»,
предложил модель вычислительной машины в форме математической абстракции. Полученную модель впоследствии стали называть «Машиной Тьюринга». Эта логическая вычислительная конструкция послужила инструментом для доказательства наличия или отсутствия алгоритмического решения для различных задач. Что же касается «полноты по
Тьюрингу», то одним из ее критериев является наличие в языке программирования команд, на базе которых можно построить алгоритмические циклы. Скрипт-язык сети Биткоин не предоставляет операторов обработки циклов, а значит, и возможности реализации на нем сложных вычислительных алгоритмов весьма ограничены. В отличие от Биткоина, в проекте
Ethereum подобная возможность предусмотрена, а реализована она как раз с использованием функционала смарт-контрактов.
Попробуем разобраться, что же они собой представляют.
Как уже неоднократно упоминалось, автором концепции является Ник Сабо, который еще в 1994 году впервые представил форму исполняемых электронных контрактов в
децентрализованной среде. Сабо определил этот вид виртуального соглашения как «протокол передачи информации,
обеспечивающий автоматическое исполнение сторонами условий
сделок». Преимуществами такой формы заключения контрактов автор считал конфиденциальность, низкие затраты на проведение операций и отсутствие необходимости привлечения посредников для обеспечения доверия для сторон по сделкам. Если сравнивать электронные контракты с обычными, то очевидным отличием будет возможность смарт-контракта контролировать лишь математически доказуемые условия сделки, в то время как в обычном контракте изложенные в нем условия могут носить и нечеткий, то есть описательный характер. В конечном итоге Ник
Сабо ограничился лишь теоретическим представлением своей модели, а непосредственная реализация данного концепта увидела свет только спустя два десятка лет в проекте Ethereum.
В целом процесс формирования смарт-контракта похож на обычную транзакцию, которая содержит ряд дополнительных элементов, придающих ей уникальные свойства. В первую очередь речь идет о программном коде, который подлежит децентрализованному исполнению при помощи так называемой виртуальной машины Ethereum (EVM) непосредственно на узлах сети, создающих блоки. В коде смарт-контракта описана алгоритмическая логика обработки сделок между пользователями сети и владельцем смарт-контракта, поместившим его в блокчейн, введя его, таким образом, в действие. С этого момента смарт-контракт присутствует в одном из блоков цепочки, и любой желающий участник сети может активировать его работу путем отправки транзакции на адрес контракта в системе. То есть смарт-контракт является полноправным субъектом сети, который может принимать и формировать транзакции. Но делает он это не самостоятельно, а только когда код контракта запускается на исполнение виртуальной машиной Ethereum на узле майнера при создании нового блока. Как происходит этот процесс?
Для простоты смарт-контракт можно сравнить с торговым автоматом, который продает, например, напитки. Покупатель помещает в автомат определенную денежную сумму наличными
или при помощи банковской карты, а аппарат выдает выбранный товар сообразно внесенным средствам. Если данную ситуацию спроецировать на блокчейн-сеть, то активация смарт-контракта происходит в момент, когда в блок помещается транзакция,
отправляющая в адрес контракта какие-то криптовалютные активы. Обрабатывая подобную транзакцию, майнер находит блок, где содержится смарт-контракт, и при помощи виртуальной машины запускает его код на обработку, подавая ему «на вход»
данные транзакции. Результат действия смарт-контракта может быть разным, что обусловлено логикой алгоритма, заложенной в сам код контракта. Это может быть просто внесение изменений в состояние системы либо формирование контрактом ответных транзакций — одной или даже нескольких. Не следует также забывать, что смарт-контракты запускаются не только майнерами, но и обычными узлами. Это происходит в моменты,
когда они обрабатывают транзакции, связанные со смарт- контрактами, в том числе и при проверке получаемых от майнеров блоков на валидность. Подобный протокол предполагает, с одной стороны, некоторую вычислительную избыточность, а с другой — обеспечивает дополнительную гарантию стабильности работы системы в целом.
В отличие от скрипт-языка Биткоин, код смарт-контрактов пишется на языках программирования, удовлетворяющих критериям полноты по Тьюрингу. Наиболее распространенным языком смарт-контрактов Ethereum является объектно- ориентированный язык Solidity, семантически схожий с популярным языком программирования JavaScript. Однако непосредственно в тело смарт-контракта помещают не исходный текст, написанный, например, на том же Solidity, а прошедший через процедуру компиляции — так называемый «байт-код».
Данный код представляет собой компактный набор команд низкого уровня, предназначенный для исполнения виртуальной машиной Ethereum.

В силу того, что любая блокчейн-система является децентрализованной средой, где каждый блок и каждая транзакция доступны для изучения любым участником сети, то и смарт-контракты Ethereum не являются исключением. Но поскольку контракт хранится в блокчейн-базе в формате байт- кода, для того, чтобы разобраться с принципом его действия,
используются специальные декомпиляторы. Это программы,
приводящие код в относительно «читаемый» вид, хотя и далекий от исходного — того, в котором он был изначально создан программистом смарт-контракта. Декомпилятор не может восстановить исходные названия переменных, а также все комментарии, сделанные программистом к своему коду. Таким образом, воспроизведение изначальной логики алгоритма после процесса декомпиляции кода смарт-контракта становится непростым делом. Бывают, правда, и обратные ситуации, когда создатели смарт-контрактов публикуют исходный текст своего кода для обеспечения большей прозрачности и доверия к своим алгоритмам. Для публикации используются внешние интернет- ресурсы, где можно ознакомиться с текстами кодов в легко читаемой форме, содержащей необходимые комментарии.
Как и любая обычная компьютерная программа, смарт- контракт обладает различными функциональными возможностями. То есть для одних смарт-контрактов достаточно нескольких строк кода, а другие могут представлять собой сложные алгоритмы, состоящие из сотен и даже тысяч строк. Это говорит в первую очередь о том, что с точки зрения приложения вычислительных усилий смарт-контракты отнюдь не равноправны — для обработки каждого из них требуется различное процессорное время. Из этого обстоятельства вытекает логичный вопрос: каким же образом формировать мотивацию майнера при обработке подобных контрактов? А что, если код смарт-контракта будет содержать, например, бесконечный цикл,
который введет компьютер обработчика в состояние «зависания»,
когда он будет бесконечно пытаться выполнять один и тот же набор операций по кругу? Чтобы защитить систему от подобных ситуаций, в Ethereum предусмотрена модель оплаты вычислительной мощности при помощи специального «топлива»
для обработки смарт-контрактов. Такой вид «топлива» в Ethereum обычно называют «газ», поскольку этот термин созвучен его английскому написанию (gas), хотя есть и другие варианты перевода этого слова.
Как ни странно, главная расчетная криптовалюта сети
Ethereum — эфир — была создана в первую очередь для важнейшей утилитарной цели — оплачивать газ для обработки смарт-контрактов. Сам газ является счетной, но немонетарной величиной и напрямую отражает объем затрачиваемого вычислительного ресурса на запуск кода смарт-контракта майнером. Для каждого оператора байт-кода сети Ethereum существует его фиксированная «стоимость», номинированная в единицах газа. Простые операторы вроде арифметических действий «стоят» дешевле. Тогда как сложные, например,
процедуры хеширования — дороже. То есть в систему изначально было заложено подобие «прайс-листа», на основе которого всегда можно рассчитать, сколько газа уйдет на обработку конкретного смарт-контракта. Поскольку обычные транзакции на перевод криптовалюты от одного адресата к другому тоже требуют вычислительной обработки, то и у них имеется свой эквивалент
«газовой стоимости». Обычно стандартная транзакция обходится в 21 000 газа, вопрос только в том, сколько стоит сам газ.
Ценообразование на газ всегда зависит от текущей нагрузки на сеть Ethereum. Если в очереди на обработку и включение в блок стоит много транзакций, майнеры начинают отдавать приоритет тем, чьи отправители указали более высокую стоимость газа. Перед стартом первой версии клиента сети
Ethereum было установлено, что единица газа будет стоить 10 000
Gwei, или одну стотысячную долю эфира. Сейчас эта цена
считалась бы исключительно высокой, поскольку цена монет эфира с момента запуска проекта очень сильно выросла, хотя и далека от своего исторического максимума. Тем не менее если покупать газ по такой цене, то стоимость отправки обычной транзакции сегодня обошлась бы в сумму около $30.
Понятно, что с ростом стоимости монеты эфира цена газа пропорционально падала, за исключением коротких периодов,
когда нагрузка на сеть существенно возрастала. В этом случае отправители транзакций боролись за их приоритетное включение в ближайшие создаваемые блоки путем увеличения цены на газ.
На весну 2019 года средняя стоимость газа колебалась в пределах
2–4 Gwei, что приравнивает комиссию за обычную транзакцию примерно к одному-двум американским центам. При отправлении транзакции можно указать и меньшую цену газа,
чем текущая рыночная. В этом случае транзакция будет обрабатываться дольше, чем обычно, а если цена выставлена сильно ниже рынка, то транзакция может и вовсе не попасть в обработку.
Посылая в сеть транзакцию для взаимодействия со смарт- контрактом, отправитель может лишь примерно предполагать,
какой объем газа потребуется для ее обработки. Поэтому он указывает не точное значение газа, а величину с запасом, то есть максимум газа, который он готов позволить «сжечь» для своей транзакции. Точное значение будет установлено майнером при непосредственной обработке транзакции и смарт-контракта,
причем с отправителя будет взыскан именно реально затраченный объем, а неиспользованный остаток будет ему возвращен. В случае же, если лимита газа для обработки смарт- контракта не хватит, его выполнение будет досрочно прекращено и «сделка» не состоится. При этом уже использованный газ возвращен не будет, а его стоимость поступит в доход майнера.
Если проанализировать все транзакции блока, в том числе связанные со смарт-контрактами, можно рассчитать совокупный
объем газа, требуемый на обработку всего блока. Поэтому в сети
Ethereum размер блока ограничен не объемом в байтах, как в
Биткоине, а в максимально допустимом количестве газа на один блок. Получается, что в блоке может быть и небольшое число транзакций, но многие из них могут оказаться весьма
«газозатратными», поэтому лимит может быть достигнут довольно быстро. На текущий момент лимит на один блок составляет величину около 8 млн единиц газа, что позволяет поместить в один блок Ethereum максимально чуть меньше четырех сотен стандартных транзакций. Предполагается, что лимит газа на блок будет расти по мере естественного увеличения вычислительных возможностей узлов сети.
Теперь становится понятно, почему концепт смарт-контрактов имеет ряд очевидных преимуществ по сравнению с контрактами обычными. Однако нельзя не обратить внимание на то, что и здесь есть свои уязвимости. Поскольку смарт-контракты создаются самими участниками сети, в этом процессе присутствует так называемый «человеческий фактор». Такой,
например, как профессиональная квалификация программистов,
создающих алгоритмы и программные коды. За несколько лет существования проекта Ethereum было отмечено много случаев,
когда ошибки, допущенные программистами при написании кодов смарт-контрактов, приводили к серьезным финансовым потерям.
Этот факт часто используется в критических оценках подобных систем, поскольку его сложно избежать в силу полной открытости и децентрализации сети. В феврале 2018 года сводная группа экспертов объявила, что около 34 000 смарт-контрактов в сети Ethereum имеют потенциальные проблемы и уязвимости, о которых пока не подозревают их владельцы. Были случаи, когда из-за ошибок в кодах смарт-контрактов злоумышленники похищали десятки миллионов долларов. Для того чтобы минимизировать риски, авторам смарт-контрактов
рекомендуется уделять больше времени их тестированию, а также заказывать аудит кода у признанных профессионалов отрасли.
Наконец настало время рассмотреть, какие функции в основном выполняют смарт-контракты в сети Ethereum на текущий момент. Согласно статистике, всего в сеть было помещено чуть менее 2 млн смарт-контрактов, из которых около полумиллиона находятся в «активном» состоянии. Общее же количество транзакций, связанных со смарт-контрактами,
оценивается более чем в 100 млн. Определенная часть смарт- контрактов обеспечивала деятельность децентрализованных криптовалютных бирж, поддержку внебиржевых сделок между контрагентами, а также организацию криптоигр, некоторые из которых завоевали широкую популярность. Но все же подавляющее большинство смарт-контрактов были задействованы для обеспечения выпуска и обращения цифровых криптожетонов, или так называемых токенов. Именно проект
Ethereum дал старт интереснейшему и весьма масштабному явлению в цифровом децентрализованном мире под названием
«токенизация», описание которого потребует отдельного подробного рассказа.
ТОКЕНИЗАЦИЯ
Каждая блокчейн-платформа имеет свою основную криптовалюту в виде цифровых монет, или, как их еще называют, коинов — от английского слова coin («монета»). Эмиссия собственной криптовалюты обычно продиктована необходимостью создавать монетарную мотивацию для узлов, поддерживающих стабильную работу сети. В частности, в проектах Биткоин или Ethereum существуют собственные базовые криптовалюты, которые используются как для выплат майнингового вознаграждения, так
и оплаты транзакционных комиссий. В дополнение к этому эти криптовалюты применяются еще и как платежные средства и даже как инструменты для инвестиций. Хотя, например,
первоначальная идея проекта Ethereum подобного использования своих монет не предполагала, но это стало одним из естественных последствий эксплуатации возможностей проекта. Для поддержки децентрализованных проектов, которые хотели бы иметь собственные цифровые активы, платформа Ethereum предложила возможности для их создания. Данный тип активов начали называть цифровыми криптожетонами или просто токенами (от английского token — «жетон»). Главное отличие токенов от коинов — отсутствие собственной блокчейн-инфраструктуры;
они стали технологической надстройкой над уже существующей сетью, которая обеспечивала их эмиссию и децентрализованное обращение.
Для чего же разработчикам проектов на базе сети Ethereum могли понадобиться собственные токены и почему они не захотели использовать для своих нужд уже имеющуюся криптовалюту сети — эфир? Во-первых, они не хотели попадать в зависимость от ценовой рыночной конъюнктуры монет эфира.
Колебания цены базовой криптовалюты проекта могли быть весьма значительными, и, как показали дальнейшие события, эти предположения оказались верными. Но главной причиной был тот факт, что эфир подходил далеко не для всех проектов,
поскольку их потребности выходили за рамки обычных свойств криптомонет. У ряда проектов возникла необходимость создать новый тип цифровых активов, коренным образом отличающийся от привычных базовых криптовалют, использующихся как средство платежа. И об этих отличиях мы сейчас поговорим подробнее.
В общем случае любой токен следует рассматривать как счетную единицу, которая совершенно не обязательно должна представлять собой цифровые деньги, хотя именно в этом
качестве криптотокены приобрели наибольшую известность.
Достаточно большое количество проектов интегрировали в свои системы специальные платежные токены, обладающие своей собственной внутренней ценностью, никак не связанной с колебаниями стоимости монет эфира. Подобные токены получили название «утилитарных» (utility) или «полезных»
токенов и олицетворяли собой либо внутренние деньги для своих проектов, либо иные формы учетных единиц. Например, баллы программы лояльности какой-то компании или нечто подобное.
Утилитарные токены предназначены для одной основной цели —
служить расчетным эквивалентом для предлагаемых проектами товаров или услуг. Они не являются активами, имеющими какое- то ценностное обеспечение, а формирование их рыночной стоимости с теоретической точки зрения не должно зависеть от успехов или неудач проекта. Тем не менее реалии таковы, что объем спроса на утилитарные токены влияет на их рыночную цену, а сам спрос формируется в зависимости от степени популярности того или иного криптопроекта, предлагающего свои токены к реализации.
Создавая свои проекты, разработчики, как правило, отчаянно нуждаются в инвестициях. Редко когда они имеют возможность покрыть все расходы на создание проекта самостоятельно — это больше свойственно крупным корпорациям, имеющим собственные финансовые резервы. А группа программистов- энтузиастов, разработавших интересную идею для своего проекта, скорее всего, предпримет попытку профинансировать ранние этапы создания проекта через привлечение внешних средств. Для проектов, создающихся в криптосреде на базе технологии блокчейн, выпуск собственных токенов стал отличной возможностью собирать значительные средства для разработки.
Такие процессы получили название «первичное размещение монет» или ICO (Initial Coin Offering) — по аналогии с известным термином IPO (Initial Public Offering), когда компания выпускает
свои акции для выхода на фондовую биржу и привлекает таким образом денежные средства для дальнейшего развития.
Если какой-либо проект позиционирует выпускаемые токены не как утилитарное средство для расчетов внутри создаваемой системы, а как виртуальные акции собственной компании, то речь идет о совсем другом типе токена как цифрового актива.
Необходимо принять во внимание тот факт, что когда инвестор приобретает такие токены, он, по идее, должен стать совладельцем компании-эмитента. То есть получить все сопутствующие привилегии, включая дивиденды от ее деятельности и право голоса при принятии важных решений. Мы не будем сейчас касаться юридических аспектов в отношении приобретения подобных токенов. Заметим лишь, что в данном случае мы имеем дело с так называемыми «инвестиционными»
(security) токенами, которые призваны отражать юридическое право владения приобретателем пропорциональной частью проекта.
Проводя процедуры первичного размещения токенов в сети
Ethereum, владельцы проектов используют для этого смарт- контракты. Они составляют код контракта таким образом, что при поступлении от какого-либо инвестора любой суммы,
номинированной в монетах эфира, ему выдается взамен соответствующее количество токенов проекта, в зависимости от условий размещения. Смарт-контракт в данном случае осуществляет контроль над эмиссией и распространением токенов. Если владельцы проекта захотят, например, поощрить раннее приобретение своих токенов, они могут предложить более низкие цены на них по дате инвестиции. В этом случае смарт- контракт должен обработать текущую дату и сравнить ее с заложенной в условия таблицей дисконтов, определяя таким образом актуальную стоимость токена для текущего временного периода. Таким же способом смарт-контракт может проводить и выкуп токенов у инвесторов по задекларированной владельцами
контракта цене, принимая токены и выдавая взамен монеты эфира в соответствующем эквиваленте. Бывают и случаи, когда нужно избавиться от лишних токенов путем их «сжигания» —
например, пересылая их на несуществующий адрес в сети, к которому ни у кого из участников нет секретного ключа.
Следует с сожалением констатировать, что владельцы многих криптопроектов довольно часто не делают акцентов на принципиальных различиях между видами токенов, которые они предлагают инвесторам к продаже. В криптовалютной индустрии стали нередки случаи, когда под эгидой ICO распространялись не инвестиционные, а чисто утилитарные токены, которые никакого права владения не давали. Подобные прецеденты быстро привлекли внимание финансовых регуляторов различных стран,
которые начали активную деятельность по законодательному разделению типов токенов, одновременно разъясняя инвесторам разницу между ними. Понятно, что каждое государство по- разному формировало свое отношение к новой форме привлечения капитала. Какие-то страны поспешили создать для проектов, проводящих
ICO, режим наибольшего благоприятствования и довольно быстро внесли в
законодательства своих стран соответствующие изменения и дополнения. Другие заняли выжидательную позицию, не решаясь идти на радикальные меры ни в одну, ни в другую сторону. А
отдельные юрисдикции сразу высказали свое негативное отношение к подобным процессам и даже применили ряд репрессивных воздействий на локальную криптоиндустрию,
обязав владельцев проектов вернуть инвесторам ранее привлеченные через ICO средства.
Несмотря на то что утилитарные и инвестиционные токены доминируют в криптоиндустрии в целом, список видов цифровых токенов не ограничивается только лишь двумя их ипостасями.
Имеются все основания предполагать, что наиболее перспективной формой токенизации будет «дигитализация», или
превращение обычных финансовых активов в цифровую форму.
Речь идет о фиатных валютах, акциях корпораций, сырьевых товарах или производных инструментах, таких как фьючерсы,
опционы или контракты на разницу цены. Для каждого из этих финансовых активов имеется возможность выпустить токены,
которые будут обращаться в децентрализованных блокчейн- средах со всеми вытекающими из этого преимуществами. Однако такие токены будут иметь и ряд особенностей. В первую очередь их цена будет целиком и полностью зависеть от колебаний рыночной стоимости «подлежащего актива» на классических финансовых рынках. Другими словами, их цена должна быть всегда стабильной по отношению к своим базовым активам.
Именно поэтому данный тип токенов назвали «стейблкоинами»,
то есть «стабильными монетами», если дословно переводить с английского.
Вторым важным отличием от утилитарных токенов является необходимость организации механизмов полного обеспечения стейблкоинов соответствующими базовыми активами. Очевидно,
что подобные модели можно реализовать лишь централизованным способом, то есть средствами специальных депозитариев, которые будут хранить у себя необходимые объемы базового обеспечения. Депозитарии подобного типа должны принимать к себе на хранение базовый актив, а взамен выдавать пользователю надлежащие стейблкоины. То же самое касается и обратной операции — когда депозитарий, принимая обратно стейблкоины, обязуется обменять их на равный объем хранимого в обеспечении базового актива. В качестве примера можно рассмотреть проект Tether, который обеспечивает эмиссию стейблкоинов американского доллара в сетях Ethereum и
Биткоин (через надсетевую инфраструктуру Omni Layer).
Стейблкоин Tether в 2015 году был выпущен гонконгской компанией Tether Limited, которая обязалась его эмитировать и обеспечивать. Необходимость токенизации доллара была
продиктована значительным спросом со стороны трейдеров криптовалютных бирж, которые хотели совершать обмен криптовалют не только друг на друга, но и на аналоги фиатных валют, представленных в цифровой форме. Таким образом они желали защититься от колебаний цены на криптовалюты,
временно выведя свой капитал в эквивалент фиатной валюты. А
многие из них просто хотели реализовать для себя конвертацию криптовалют в токены доллара, чтобы потом обменять их напрямую у эмитента на доллары обычные, получив их из хранилища посредством банковского платежа.
Логично было бы предположить, что если какая-то компания выпускает, скажем, 1 млн стейблкоинов доллара США, то на ее банковском счету должно быть не менее 1 млн физических долларов, которыми эти токены обеспечены. Однако механизмы обеспечения стейблкоинов базовыми активами лежат за пределами контроля блокчейн-сетью как таковой и представляют собой централизованный сервис, основанный на доверии. Таким образом, обеспечение «прозрачности» деятельности лежит на самом эмитенте. В случае с Tether прозрачность деятельности депозитария была обеспечена в явно недостаточной степени. От внешних финансовых аудитов компания всегда отказывалась, а между тем общая эмиссия токенов USDT (Tether) превысила к весне 2019 года $2,5 млрд. Неудивительно, что компания постоянно становится объектом пристального внимания финансовых регуляторов как в самом Гонконге, так и в стране эмитента долларов — США, где регуляторы с 2018 года запретили компании операции с резидентами страны. Тем не менее стейблкоины Tether продолжают пользоваться исключительной популярностью у криптотрейдеров, и проблем с доверием у них,
по крайней мере, на текущий момент, не возникает.
Несмотря на организационные и регулятивные сложности токенизации классических финансовых активов, этот процесс постепенно набирает популярность. Появляются проекты,
которые предлагают токенизацию драгоценных металлов или акций биржевых компаний. Помимо сети Ethereum, на рынке стали появляться и другие токенизирующие платформы, однако им пока непросто бороться с лидером отрасли, который консолидирует подавляющее большинство выпускаемых токенов.
Для того чтобы придать отраслевой токенизации системную форму, проект Ethereum разработал специальные стандарты для различных типов токенов. Наиболее популярным стандартом на текущий момент является ERC-20 — именно в этом формате выпущено большинство токенов различных проектов. Этот стандарт описывает набор технических спецификаций для выпускаемых токенов, чтобы они принимались всей сетью и могли взаимодействовать с другими токенами системы, будучи совместимы между собой по формату.
Довольно часто у владельцев токенов возникает необходимость совершать обмен одних токенов на другие.
Базовый функционал сети Ethereum не позволяет совершать прямой обмен разными токенами в пределах одной транзакции.
Для того чтобы участники сети могли обмениваться между собой разными активами, требуется не менее двух транзакций,
имеющих форму встречной сделки. Поскольку все транзакции в блокчейн-сетях являются «безотзывными», то в таких случаях вопрос обеспечения доверия между сторонами становится достаточно актуальным. Наиболее популярным методом реализации обмена являются криптовалютные биржи,
посредством которых и совершается подавляющее большинство сделок с токенами, в том числе стандарта ERC-20. Существует также ряд децентрализованных бирж, которые специализируются исключительно на обмене токенов сети Ethereum между собой.
За неполные четыре года существования сети Ethereum в ней было эмитировано чуть менее 200 000 токенов различных типов
— утилитарных, инвестиционных и ряда других. Подобные масштабы токенизации говорят о том, что отрасль криптотокенов
активно развивается, и в ближайшее время мы сможем увидеть все больше проектов, базирующихся на этом типе цифровых активов. По некоторым оценкам, в индустрии создания децентрализованных приложений на базе платформы Ethereum задействованы сотни тысяч IT-специалистов во всем мире, и их число продолжает расти. Развиваются и возможности самой сети
Ethereum: ее разработчики, и в первую очередь сам Виталик
Бутерин, постоянно ищут возможности для улучшения работы сети и решения тех проблем, которые неизбежно возникают в процессе эксплуатации проекта. Это и чрезмерный рост размера базы блоков, и, конечно же, объемы затрачиваемого на майнинг электричества. В настоящее время сеть Ethereum находится в состоянии переходного периода от энергоемкого типа консенсуса
Proof-of-Work к более прогрессивному алгоритму, который позволит избежать исключительных энергозатрат, поскольку базируется совершенно на ином принципе. Он называется
«доказательством владения», или Proof-of-Stake, и уже активно используется в ряде проектов криптоиндустрии. Являясь, по сути,
основной альтернативой алгоритму доказательства работы, этот принцип постепенно начинает вытеснять своего энергетически неэффективного конкурента.
ДОКАЗАТЕЛЬСТВО ВЛАДЕНИЯ
При анализе принципов защиты блокчейн-сетей при помощи алгоритма доказательства работы явным образом очерчиваются как ее преимущества, так и недостатки. Очевидным достоинством концепта является математическая строгость постановки вычислительной задачи, решение которой дает неоспоримое право на вознаграждение за создание блока. Одновременно с этим имеют место и негативные аспекты, а именно — высокие
энергозатраты, которые используются достаточно нерационально, поскольку польза от полученных результатов вычислений заканчивается непосредственно в момент создания каждого нового блока. Понятно, что подобный метод достижения консенсуса в децентрализованных средах получает массу критических отзывов, связанных с неэффективным использованием энергоресурсов. Этой проблемой многие криптоэнтузиасты были озабочены еще со времен раннего периода работы сети Биткоин, заранее просчитывая ситуацию,
при которой совокупные энергозатраты всей сети будут расти вместе с популярностью криптопроекта. Эта проблематика серьезно обсуждалась криптосообществом, когда в июле 2011
года на одном из самых популярных биткоин-форумов прозвучала революционная идея о том, что от энергозависимого майнинга можно все-таки отказаться. В качестве замены концепту доказательства работы была предложена модель «доказательства доли владения», которую в криптосообществе принято с тех пор называть Proof-of-Stake (PoS).
Автор идеи, укрывшийся за форумным псевдонимом Quantum
Mechanic, сообщил о возможности использовать потенциал владения криптовалютой вместо контрибуции вычислительной мощности узлами сети, как это делается при обычном майнинге.
Другими словами, было предложено выдать право создавать блоки тем узлам, на балансе которых располагалось значительное количество криптомонет в течение относительно продолжительного времени. Идея была полностью поддержана и развита криптосообществом. Примерно через год, в августе 2012
года, разработчиками Скоттом Нэдалом и Санни Кингом была представлена платежная система Peercoin. Это была первая блокчейн-сеть, добавившая элементы доказательства владения к привычному принципу доказательства работы, создав, таким образом, гибридный механизм консенсуса. Протокол Proof-of-
Work (PoW) в сети Peercoin использовался для формирования
новых денежных эмиссий в виде вознаграждения для майнеров,
создающих блоки, наряду с транзакционными комиссиями — по аналогии с сетью Биткоин. Однако вместе с PoW блоками в сети могли появляться и блоки, которые создавались на основе принципа доказательства владения.
Для того чтобы создать блок, необходимо было провести действия, отдаленно напоминающие майнинг. Только вот создателей блоков на основе доказательства владения решили называть не майнерами, а валидаторами, то есть узлами,
подтверждающими блоки. Сам же процесс создания блока стали называть форжингом или минтингом, от английских слов forging и minting, означающих «выковывать» и «чеканить». Прежде чем приступить к созданию блока, валидатору необходимо было показать, каким объемом криптомонет он владеет. Так же как и при майнинге, нужно было хешировать определенные параметры, такие как данные предыдущего блока, текущее время и адрес, на котором располагались принадлежащие валидатору средства. Полученный хеш сравнивался с произведением двух значений, которые представляли собой количество монет у валидатора и продолжительность владения ими. Как только удавалось получить хеш, меньший по значению, чем это произведение, блок считался созданным. Очевидно, что чем больше у валидатора монет и чем дольше он ими владел, тем выше шансы, что произведение этих чисел будет весьма велико и превысит случайно полученный хеш, который всегда можно рассматривать и как обычное число. Поскольку в процессе хеширования есть только один постоянно меняющийся параметр
— время в полных секундах, то и сам хеш может меняться лишь один раз в секунду. Валидатор, создавший блок, непосредственное вознаграждение за это не получал, зарабатывая лишь совокупную комиссию от транзакций, помещенных им в блок.
Как следует из алгоритма создания блоков Proof-of-Stake,
значительных энергозатрат для этого не требуется. Однако это не
означает, что у данного типа консенсуса нет недостатков или неудобств. Валидатор, создающий блоки по принципу Proof-of-
Stake, фактически замораживает средства на своем счету и вынужден не использовать их достаточно длительное время,
чтобы не потерять накопленный потенциал для возможного создания блоков. Для самой сети это не очень хорошо, поскольку скорость обращения денег внутри нее может существенно замедлиться, что негативно скажется на возможностях ее использования и развития. Подобный метод создания блоков мотивирует узлы в первую очередь к накоплению, а не расходованию средств. Таким образом, их чрезмерная консолидация под контролем одного или нескольких узлов может привести к повышению степени централизации процессов управления сетью вопреки изначальному замыслу. Также на процесс создания блоков практически не оказывают никакого влияния узлы с относительно небольшой долей владения криптомонетами, поскольку у них практически отсутствуют шансы стать валидаторами в силу своего незначительного финансового потенциала.
Для устранения этих недостатков была разработана модификация протокола Proof-of-Stake, где были представлены механизмы делегирования полномочий валидаторов от рядовых участников сети к избранным ими узлам. Каждый узел посредством специальной транзакции может отдать свой голос одному или нескольким потенциальным кандидатам в валидаторы. Получившие большинство голосов узлы-делегаты могут и не обладать значительным количеством монет, но зато они готовы контрибуцировать свои вычислительные возможности для поддержания стабильной работы сети, получая за это относительно скромную транзакционную комиссию.
Подобный принцип назвали «делегированным доказательством владения» (DPoS), и именно эта форма протокола Proof-of-Stake впоследствии получила наиболее широкое распространение в
проектах, которые решили отказаться от энергозатратного алгоритма доказательства работы.
Отличие DPoS от классической формы доказательства владения состоит в том, что валидаторы, получившие право делегирования, уже не перебирают хеши, чтобы найти подходящее его значение. Вместо этого они формируют очередь из подобных им делегатов, чтобы договориться о строгом порядке формирования блоков. Каждому из валидаторов выделяется определенный временной период, в течение которого он имеет право создать блок, принимаемый всей сетью. Сам период может быть довольно коротким и исчисляться единицами секунд — это зависит от протокола сети и того, насколько большую пропускную способность участники сети хотят получить для своих транзакций. В случае если по какой-то причине валидатор пропустил свою очередь, право создания блока переходит к следующему по порядку валидатору. Сам порядок имеет единые для всех правила формирования, при этом каждый валидатор вычисляет его самостоятельно. Понятно, что у всех валидаторов этот рассчитанный порядок должен в точности совпадать, иначе работа сети может быть нарушена.
Преимущества формы Proof-of-Stake с делегированием полномочий очевидны. Во-первых, узлы с незначительными балансами имеют хотя и косвенное, но пропорциональное своему финансовому балансу влияние на выбор узлов-валидаторов. В
своей совокупной массе эти узлы с большой вероятностью не позволят крупным игрокам захватить и централизовать процессы управления сетью. Непосредственным созданием блоков будут заниматься узлы, наилучшим образом для этого предназначенные и облеченные доверием большинства узлов сети. И, наконец, что также немаловажно, отсутствует необходимость блокирования на счетах больших объемов криптосредств, чтобы валидатор имел возможность постоянно доказывать свою финансовую
состоятельность и получать таким образом права на создание блоков в сети.
Это не означает, что концепт доказательства владения не имеет потенциальных проблем. Этот протокол также может быть подвержен различным атакам, одной из которых теоретически может стать знакомая нам «Атака 51%». Правда, в отличие от систем с доказательством работы, где требуется захватить не менее половины всей вычислительной мощности сети, в случае с
Proof-of-Stake необходимо получить контроль над половиной и более всех криптомонет проекта. Однако последствия такой атаки имеют схожую негативную природу в обоих концептах, поскольку автоматически приводят к подрыву доверия к сети в целом и обесцениванию локальной криптовалюты, разоряя и самого атакующего.
Одной из возможных сложностей на пути данной формы консенсуса может быть атака Nothing at stake, или «ничего на кону». Подобная ситуация происходит, когда недобросовестный валидатор пытается создать и подписать блоки в различных ответвлениях цепочки, которые образовались случайным или намеренным образом. В случае с доказательством работы такое поведение майнера нерационально, поскольку он таким образом распределяет свою вычислительную мощность между ветвлениями и уменьшает собственные шансы на создание блока в любом из них. В модели доказательства владения он, напротив,
ничем не рискует, поскольку не затрачивает ни средств, ни вычислительных ресурсов на создание блоков в конкурирующих ответвлениях.
А между тем подобная деятельность гарантированно приведет к нарушению консенсуса, к которому сеть в итоге не сможет прийти. Каждый проект, использующий модель Proof-of-Stake, пытается противостоять этой проблеме с различной степенью эффективности.
Еще одним важным свойством Proof-of-Stake в его классической форме является отсутствие аналога вознаграждения
за майнинг. Поскольку майнинга как такового нет, то отсутствуют и серьезные инфраструктурные затраты на его поддержание. Поэтому считается, что поощрением валидатора может быть только собираемая транзакционная комиссия.
Однако в этом случае возникает известная дилемма «курицы и яйца»: если нет майнинговых эмиссий, то откуда вообще возьмутся деньги в системе? Этот вопрос различные проекты,
желающие использовать принцип доказательства владения,
решают по-разному. Некоторые идут по пути, который проложил пионерский Proof-of-Stake проект — Peercoin. В нем, как уже упоминалось, была реализована гибридная модель консенсуса,
когда ранние блоки создавались при помощи майнинга с доказательством работы. Затем к ним стали «подмешивать»
блоки, созданные валидаторами посредством протокола доказательства владения. После чего PoS блоки начали доминировать в цепочке, а PoW применялся только для того,
чтобы совершить дополнительную эмиссию, объем которой постоянно сокращался по мере роста общего количества монет в системе. Известны также проекты, которые решили не интегрировать у себя протокол доказательства работы вообще, а всю эмиссию создали в первом, генезисном блоке, разместив ее на адресах, контролируемых разработчиками. Впоследствии эти монеты постепенно были проданы новым участникам сети,
сформировав таким образом внутрисетевое денежное обращение.
В этом случае проекты, как правило, использовали модель DPoS,
которая позволяла быстро и эффективно формировать блоки с транзакциями.
Возвращаясь к проекту Ethereum, важно иметь в виду, что он находится в процессе перехода от одного типа консенсуса к другому. Еще в 2017 году разработчики проекта анонсировали грядущие изменения, связанные с переходом от майнинга к Proof- of-Stake. В первой половине 2018 года появились обновления,
обусловленные переходным периодом. Было анонсировано
постепенное снижение награды за майнинг — этот процесс назвали «ледниковым периодом» для сети Ethereum. Ходят слухи,
что планируется ввести довольно жесткие правила для валидаторов по «имущественному цензу». Предполагают, что минимальный порог для блокирования валидаторами средств составит не менее 1500 монет эфира, что даже по текущему,
претерпевшему значительную от своего максимума коррекцию курсу соответствует фиатной сумме более $200 000. И эти средства валидатор теоретически рискует утратить, поскольку они могут быть уничтожены, если узел будет уличен в атаке
Nothing at stake, то есть в одновременном подписании конкурентных блоков в разных ветвлениях цепочки.
Окончательные правила будут объявлены разработчиками при выпуске обновления, которое заменит протокол консенсуса в сети
Ethereum на доказательство владения.
Все эти меры находят как положительный, так и отрицательный отклик в криптоиндустрии. Вне всякого сомнения, недовольными остаются те, кто ранее инвестировал значительные средства в майнинг монет эфира. Переход на Proof- of-Stake оставит их не у дел, если, конечно, они не использовали для майнинга видеокарты. Дело в том, что графические процессоры являются универсальным инструментом для этой деятельности и могут быть при необходимости переориентированы на майнинг других криптовалют. Раздаются также тревожные голоса, предупреждающие о возможных проблемах с безопасностью при переходе на PoS протокол.
Положительно же оценивают предпринятые разработчиками шаги те представители криптосообщества, кто считает, что энергетически неэффективный майнинг является серьезным препятствием для активного развития технологии блокчейн.
Объясняют они свою позицию тем, что майнинг представляет собой исключительно ресурснозатратный процесс, который оказывает негативное влияние на экологическую обстановку в
мире и подвергается критике в том числе и на государственных уровнях.
АЛЬТКОИНЫ
Способность человека к критическому анализу является одним из основных драйверов развития цивилизации. Философия скептицизма базируется на понятии сомнения в истинности установленных в обществе догматов как принципа мышления.
Именно скептицизм, заставляющий подвергать сомнению идеализм окружающих нас сущностей, мотивирует к изменениям и улучшениям приобретенных человечеством научных,
культурных и социальных достижений. Несомненно, не в последнюю очередь из-за этого отдельные представители криптоиндустрии посчитали ранние блокчейн-сети недостаточно совершенными и принялись создавать новые, более прогрессивные по своим возможностям проекты. В какой-то момент этот процесс принял лавинообразный характер, когда общее число криптопроектов начало исчисляться тысячами, и стало решительно невозможно охватить и проанализировать весь объем связанной с ними информации.
Капитализация Биткоин, то есть совокупная ценность всей его эмиссии, сопоставима со всеми остальными существующими криптомонетами вместе взятыми. Его авторитет в блокчейн- индустрии настолько велик и непререкаем, что все криптовалюты, появившиеся позднее, называют «альт коинами»,
то есть полагают альтернативными именно Биткоину. Первые альткоины появились спустя всего лишь несколько лет после запуска сети Биткоин, а именно — в 2011 году. Эти проекты пытались преодолеть те, по их мнению, неудобства, которые естественным образом сложились в самом Биткоине. При этом
один из новоявленных альткоинов практически полностью скопировал логику функционирования своего предшественника,
просто изменив параметры процессов, в нем происходящих. Этот проект получил название Litecoin, что само по себе говорит о том,
что он является облегченной версией Биткоина.
Проект Litecoin был разработан американским программистом
Чарли Ли, которого некоторое время даже подозревали в авторстве Биткоина. Хотя трудно уловить логическую связь между фактом сохранения инкогнито в одном проекте и раскрытия себя в более позднем и менее популярном. Тем не менее подобные идеи обсуждались в криптосообществе — по крайней мере, до тех пор, пока внимание не переключилось на иные, более одиозные кандидатуры. Как бы там ни было, Litecoin сумел отвоевать у рынка свою собственную нишу и до сих пор входит в десятку самых больших по капитализации альткоинов. Что же отличает этот проект от своего более «массивного» прообраза?
Основные отличия можно описать цифрой «4». Именно этот множитель был выбран автором проекта для масштабирования параметров сети Биткоин. Блоки в Litecoin создаются в четыре раза быстрее, то есть в среднем за 150 секунд, а предел конечной эмиссии установлен на уровне вчетверо большего значения — 84
млн монет. Для формирования адресов так же, как и в Биткоин,
используется алгоритм хеширования SHA-256, зато механизм майнинга был существенно изменен. Для нахождения новых блоков в сети Litecoin применяется специальный алгоритм Scrypt,
задействующий большие объемы оперативной памяти. Это позволяет оказывать противодействие майнингу с
использованием ASIC, хотя в конечном итоге эти устройства все равно были представлены на рынке.
Что касается рыночного спроса на монеты Litecoin, то он находится на среднем уровне. Довольно долго цена держалась в диапазоне $2–4 за монету, но во время большого «хайпа» цена достигла своего исторического максимума в $358. Затем она
снизилась до уровня примерно $80, где и пребывает в настоящее время, а общая капитализация Litecoin составляет немногим менее $5 млрд (около 5% от капитализации Биткоина). Монеты
Litecoin являются довольно популярным финансовым инструментом для спекулятивной торговли, и их часто можно встретить в листингах многих криптовалютных бирж и брокерских компаний.
Еще одним популярным альткоином, постоянно оспаривающим вторую позицию по капитализации у Ethereum,
является Ripple, разработанный одноименной компанией для организации процессов обмена валют между финансовыми институтами, и в первую очередь банками. Ripple был изначально задуман и создан для B2B-индустрии, то есть для деловой среды,
где все взаимодействие осуществляется исключительно между юридическими лицами. Это, впрочем, не помешало многим частным криптотрейдерам рассматривать криптовалюту Ripple как инструмент для инвестирования и помещать туда достаточно существенные капиталы с целью извлечения дохода от курсовой разницы. Проект Ripple имеет достаточно много отличий от привычных блокчейн-сетей, некоторые из которых нам целесообразно будет рассмотреть.
Интересно, что одной из ключевых персон, имевших отношение к появлению Ripple, стал бывший создатель файлообменной сети eDonkey и биржи Mr. Gox Джед Маккалеб.
Именно он в 2012 году в сотрудничестве с инвестором Крисом
Ларсеном предложил разработчику платежного протокола
Ripplepay Райану Фуггеру создать специальную криптовалюту,
которую можно было бы использовать в межбанковских валютно- обменных операциях. Правда, уже через год Маккалеб покинул компанию Ripple и основал ее прямого конкурента — проект

1   ...   8   9   10   11   12   13   14   15   16


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