Книга: Блокчейн: Принципы и основы
Назад: Предисловие
Дальше: ЧАСТЬ III. БЛОКЧЕЙН-ИНДУСТРИЯ
Часть II

ПРАКТИЧЕСКИЕ РЕАЛИЗАЦИИ

Предыстория проекта Биткоин

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

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

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

В 1982 году американский криптограф Дэвид Чаум опубликовал работу под названием «Слепые подписи и неотслеживаемые платежи», которая стала продолжением его исследований в области зашифрованных коммуникаций. Концепцию слепой подписи мы рассматривали ранее, поэтому читатель уже должен иметь представление о принципах ее работы. Именно на базе этой формы ЭЦП Чаум впоследствии создал первую систему обращения электронных денег, которую назвал eCash. Данный проект использовал технологию «слепой цифровой подписи» для авторизации и проверки цифровых банкнот, которыми обменивались контрагенты. При этом сам авторизатор играл роль банка — централизованного сервиса, основной функцией которого являлось обеспечение защиты системы от угрозы повторного расходования цифровых денег. Вместе с тем подобная централизация могла привести к возможной фальсификации клиентских балансов, если бы у владельцев системы возникло такое желание. Тем не менее это был первый проект, в котором были применены алгоритмы асимметричной криптографии для создания электронной платежной системы.

Для обеспечения функционирования проекта eCash в 1990 году в Нидерландах была зарегистрирована компания DigiCash, которая в период 1990–1995 годов сотрудничала с банками и крупными платежными системами, в том числе и такими, как VISA. Даже компания Microsoft не осталась в стороне и пыталась интегрировать данный проект в свою на тот момент новейшую и во многом революционную операционную систему Windows 95. Считалось, что наличие интереса со стороны столь серьезных партнеров гарантирует компании DigiCash отличные перспективы развития. Однако просчеты Чаума в стратегии ведения бизнеса привели в 1998 году компанию к банкротству, после чего ее активы были проданы, а сам проект закрыт.

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

В целом 1998 год был богат на важные события в мировой финансовой индустрии. Глобальный финансовый кризис, зародившись в Азии, прошелся, как ураган, по всему миру, нанеся существенный ущерб экономикам некоторых развивающихся стран. Это заставило многих задуматься о том, что существующая мировая финансовая система, имеющая в большой степени централизованную природу, достаточно уязвима перед лицом экономических кризисов. Причины же, их порождающие, обусловлены либо чрезмерной государственной «зарегулированностью» национальных экономик, либо же банальной некомпетентностью руководителей крупнейших финансовых институтов. Причем как коммерческих, так и имеющих статус государственных структур, включая в том числе центральные банки. Возможно, именно тогда начали зарождаться идеи децентрализованного денежного обращения, позволяющего избежать исключительной зависимости от конъюнктурных решений конкретных персоналий, волею судеб держащих в руках политическую и экономическую власть в своих государствах. Как следствие, каждый новый появлявшийся проект, связанный с децентрализацией платежных процессов, впитывал в себя все эффективные методы, разработанные в этом секторе индустрии ранее, приближая, таким образом, создание решения, которое бы совершило настоящую революцию в системе денежных отношений.

Не исключением стал и проект Bit Gold, разработанный в том же году (хотя и публично представленный лишь в 2005) американским ученым венгерского происхождения Ником Сабо, специалистом в области криптографии, информатики и права. Созданная им система, помимо асимметричной криптографии, включала интересный элемент, который впоследствии сыграет важнейшую роль в технологии блокчейн, а именно — необходимость для пользователей системы решать сложные вычислительные задачи с целью формирования эмиссии электронных денег. Задача сводилась к поиску хешей специально заданного вида, где конечным результатом было нахождение строки данных, начинающейся с определенного количества бит с нулевым значением. Поскольку функция хеширования выдает алгоритмически зависимый, но заранее визуально непредсказуемый результат, необходимо перебрать достаточно большое количество различных исходных прообразов, чтобы в конечном итоге совершенно случайно получить такой хеш, вид которого будет удовлетворять условию задачи. В данном случае он должен содержать необходимое количество нулевых символов в начале строки данных.

Этот прием для формирования сложновычислимой задачи Ник Сабо позаимствовал у автора проекта Hashcash Адама Бэка, который еще в 1997 году задействовал похожий алгоритм в системе противодействия массовым рассылкам электронной почты. В проекте Бэка тоже было необходимо при отсылке каждого письма вычислять хеш, где первые 20 бит результата должны были являться нулями. Сама по себе задача, с вычислительной точки зрения, была несложной и подразумевала перебор максимум 220 вариантов (то есть примерно около 1 млн), на что обычному компьютеру требовалось всего несколько секунд. Однако подобную задачу необходимо было решать для каждого отсылаемого письма, и в случае, если количество адресатов в списке почтовой рассылки было значительным, то объем времени, затрачиваемый на расчеты, пропорционально увеличивался. Результат вычислений добавлялся к служебной информации, сопровождающей каждое электронное письмо, после он чего мог быть легко проверен компьютером получателя на «валидность» в части необходимого количества начальных нулей. Так спам-фильтрам было гораздо проще классифицировать полученное почтовое сообщение.

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

В 1999 году в статье за авторством криптографов Маркуса Якобсона и Ари Джуелса впервые было введено понятие Proof-of-Work, или «доказательство работы». Данный термин относился к решению криптографической задачи нахождения секретного изначального прообраза, хеш которого удовлетворял бы по сложности определенным требованиям. При этом любой другой участник сети, получив данный рассчитанный прообраз, мог бы легко проверить его валидность, пропустив через процедуру хеширования. Это позволяло получить однозначное доказательство того, что сложная вычислительная работа действительно была проведена узлом, который претендует на признание за ним этого факта.

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

Тем не менее труды создателей вышеописанных систем не пропали даром. Спустя непродолжительное время эти принципы найдут отражение в документе, который был представлен миру автором, имя которого тогда было неизвестно никому, а сейчас известно очень многим. Речь идет о человеке, тайна существования которого не разгадана и по сей день — о загадочном создателе технологии блокчейн и, собственно, Биткоина как первого проекта, на ней построенного. Имя этого создателя — Сатоши Накамото, который 31 октября 2008 года представил криптографическому сообществу статью, описывающую принципы его революционного проекта, получившего спустя некоторое время мировую известность. Кто же такой этот Сатоши Накамото и в чем состояли главные отличия его проекта распределенных цифровых денег от подобных, ранее предложенных другими специалистами в области асимметричной криптографии?

Кто придумал Биткоин

По мере того как проект Биткоин начал получать широкую известность, многие задались вопросом: кто такой Сатоши Накамото? Существует ли в реальности человек с таким именем или же мы имеем дело лишь с экзотическим псевдонимом? Если попытаться написать имя «Сатоши Накамото» на японском языке, то придется задействовать три иероглифа. «Сатоши» означает «находчивый», «мудрый», «ясное мышление», часть фамилии «Нака» это «взаимосвязи», а «Мото» это «основа» или «происхождение». Поскольку реальный Накамото не оставил ни одного технического описания на японском языке, а все коммуникации вел на безупречном английском, был сделан однозначный вывод, что таинственный изобретатель является уроженцем англоязычной среды.

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

Выпускник физического факультета Калифорнийского Политехнического Университета и увлекающийся железнодорожными моделями Дориан Сатоши Накамото однозначно обладает серьезными математическими способностями и даже владеет навыками программирования. Тем не менее сам он утверждает, что имеет достаточно слабое понятие о криптографии, а о самом проекте Биткоин узнал от журналистов лишь в тот самый день, когда они возникли на пороге его дома. Что, впрочем, не помешало ему тут же на всякий случай вызвать полицию. Кроме того, он заявил, что длительное время оставался безработным, перебиваясь случайными заработками, отчего его доходы сильно упали. Финансовые проблемы были столь серьезны, что, по его словам, он даже был вынужден отказаться от подключения к сети интернет у себя дома. В конечном итоге Накамото попросил «уважать право на личную жизнь и оставить его в покое», а на нескольких чрезмерно назойливых журналистов даже пытался подавать в суд. Но в то же время он выразил благодарность представителям криптосообщества за моральную и даже материальную поддержку, которая ему была в определенной степени оказана. В итоге многие сделали вывод, что либо господин Накамото весьма искусно притворяется непричастным, либо он действительно говорит правду, и тогда придется затратить немалые усилия для поиска настоящего создателя Биткоина. Или «создателей» если это не один человек, а целая группа людей, что также вполне вероятно.

Если предположить, что мы имеем дело с псевдонимом конкретного человека, то одним из лучших кандидатов на роль таинственного создателя технологии блокчейн был бы сам Ник Сабо, автор BitGold. Как известно, принципы построения обоих проектов были довольно схожи, причем Сабо остановился чуть ли не в одном шаге от успеха, который продемонстрировал Биткоин. Вместе с тем довольно подозрительным считался тот факт, что Сатоши Накамото в своем описании проекта Биткоин, цитируя многих предшественников по созданию цифровых денег, ни разу не упомянул Ника Сабо, хотя именно его проект был наиболее близок к творению Сатоши. Что же касается самого Ника Сабо, то он сразу решительно открестился от авторства и не предпринимал в дальнейшем никаких шагов для того, чтобы изменить существующее положение дел в этом вопросе. Вместе с тем Сабо выразил удовлетворение, что его исследования в области криптографии и цифровых денег получили столь успешное развитие в своем практическом применении. Правда, когда проект Биткоин только появился, Сабо его «как бы» не заметил и никоим образом не прокомментировал, хотя создание децентрализованных цифровых денег, было, без преувеличения, делом всей его жизни. Справедливости ради следует также отметить, что Ник Сабо действительно внес весомый вклад в создание технологии блокчейн, а также ввел в обиход понятие «умных контрактов», нашедших свое применение сперва в системе Ethereum (Эфириум), а затем и в других блокчейн-платформах.

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

Если начать изучать статьи, посвященные поиску создателя Биткоина, поневоле удивляешься кого только не подозревали в авторстве этого проекта. Очень многие известные люди в IT-индустрии удостоились подобных предположений. Назывались имена и Билла Гейтса, основателя Microsoft, и Стивена Джобса, основателя Apple, и даже Илона Маска, одного из cооснователей компаний PayPal, Tesla и Space X. Все они, разумеется, довольно быстро отклонили любые формы своей причастности к созданию Биткоина. Среди авторитетных представителей криптосообщества предполагаемыми авторами Биткоина в разное время считали Гэвина Андерсена, основателя Bitcoin Foundation (некоммерческой организации, занимающейся стандартизацией, защитой и поощрением использования Биткоин во всем мире), а также Чарли Ли автора проекта Litecoin, созданного как альтернатива Биткоину, с использованием его кода как базовой основы.

На самом деле список потенциальных кандидатов на роль создателя Биткоина настолько велик, что мы не будем его приводить целиком и рассматривать каждую персоналию в отдельности. Что же касается конкретно Гэвина Андерсена, то он состоял в переписке с настоящим Сатоши Накамото около двух лет, до момента неожиданного исчезновения последнего из всех видов коммуникаций весной 2011 года. Как заявил сам Накамото, «он удаляется, чтобы заняться более важными делами». В процессе их общения Андерсен полагал, что имеет дело с талантливым человеком японского происхождения, хорошо говорящим по-английски. Впрочем, получив от Накамото программное обеспечение клиента сети Биткоин, Андерсену с коллегами пришлось переписать около 70% кода, поскольку они посчитали его довольно «неряшливым». Кстати, именно этот фактор заставил их полагать, что Накамото создал Биткоин, скорее всего, в одиночку, в противном случае код не содержал бы столько ошибок и был бы более «читаемым». Впоследствии Андерсен какое-то время считал именно Крейга Райта тем человеком, с которым он общался как с автором Биткоина, но затем признал свою ошибку, и вопрос об авторстве вновь стал актуальным.

Наконец, поиском реального создателя занялась серьезная организация Агентство Национальной Безопасности США. Специалисты этого ведомства провели лингвистический анализ всех текстов Накамото, которые тот помещал на различных форумах, посвященных тематике криптографии и создания цифровых платежных средств. В процессе анализа был использован метод так называемой «стилометрии», позволяющий исследовать стилистику написания текстов на основе статистического анализа повторений различных слов. Данный метод также называется «авторским инвариантом», отражающим некую количественную характеристику литературных текстов. Тексты Накамото сравнили с текстами других авторов, причем количество этих образцов исчислялось чуть ли не триллионами. В результате был получен уникальный «цифровой отпечаток» текстов Накамото, однозначно идентифицирующий его авторство. Обладая доступом к огромному хранилищу электронных сообщений, логов чатов и в целом архивов трафика центров обработки и хранения данных таких корпораций, как Google, Amazon и Facebook, специалисты АНБ получили возможность сравнить «отпечаток» Накамото с данными, принадлежащим не менее чем миллиарду человек. Известно, что на обработку данных ушло около месяца, и, по слухам, был получен положительный результат поисков, который АНБ тем не менее продолжает сохранять в секрете.

Почему же этот таинственный Сатоши Накамото решил сохранить инкогнито? На этот вопрос нет однозначного ответа, и мы можем лишь строить предположения о причинах, побудивших его к этому. Сделал он это лишь из природной скромности или руководствовался соображениями личной безопасности, понимая, что его изобретение может вызвать революцию в мире бизнеса и социальных взаимоотношений? Предполагал ли он, что правительства многих государств будут озабочены возникшей проблематикой децентрализации денежных эмиссий, анонимизации финансовых потоков и, как следствие, возможной утратой контроля над ними? В любом случае Сатоши Накамото исчез и никогда более не проявлял себя ни в интернете, ни в каких-либо СМИ. В последнем сообщении в ответ на предложение Андерсена принять приглашение от ЦРУ на встречу для разговора Накамото написал буквально следующее:

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

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

Как устроен Биткоин

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

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

Биткоин использует форму данного уравнения в виде y2 = x3 + 7. Явное упрощение не должно вводить читателя в заблуждение — указанных коэффициентов вполне достаточно для того, чтобы создать значительную вычислительную сложность в части решения обратной задачи восстановления секретного ключа из публичного. Вообще данные для параметров эллиптических кривых взяты из рекомендаций консорциума SECG, который разработал «Стандарты для эффективной криптографии», использующиеся в том числе и в проекте Биткоин. Параметры рассчитаны таким образом, чтобы придать системе наименьшую уязвимость при попытке атаковать шифры, созданные на базе асимметричных криптографических методов. На текущий момент неизвестно ни об одной успешной попытке взлома алгоритма эллиптической криптографии, использующегося с параметрами, рекомендованными SECG. Возможно, эти задачи будут успешно решать квантовые компьютеры, но для этого им необходимо обзавестись достаточным количеством кубитов, а на это потребуется время, возможно, даже весьма значительное.

Вернемся к генерации ключей. Сначала случайным образом создается 256-битный закрытый ключ, а затем из него математически вычисляется публичный ключ точно такого же размера. Однако публичный ключ — это еще не совсем адрес Биткоин. Для того чтобы он стал адресом, с ним необходимо провести определенные процедуры. Сначала открытый ключ последовательно пропускают через два различных алгоритма хеширования (SHA-256 и MD5). В последнем случае его адрес укорачивается с 256 бит до 160. Затем к полученному результату в начало добавляют один байт идентификатора сети (основная сеть или тестовая), а в конец — четыре байта контрольной суммы адреса, которая также представляет собой часть хеша последнего результата. Контрольная сумма необходима для проверки, если ввод адреса осуществляется вручную: в случае ошибочного ввода система выдаст предупреждение. Транзакции в блокчейн являются безотзывными, поэтому отправитель криптосредств не имеет права на ошибку. Если адрес будет введен некорректно, средства отправителя уйдут «в никуда». А точнее — на адрес, от которого ни у кого из потенциальных пользователей сети не будет «отмычки» в виде секретного ключа. В результате никто не сможет предъявить права на эти средства, которые, таким образом, будут безвозвратно потеряны для системы.

Завершающий шаг в процедуре получения адреса Биткоин — его преобразование в более «читаемый» вид. Для этого блок данных в формате шестнадцатеричного кода (использующего цифры от 0 до 9 и буквы от A до F) преобразуется алгоритмом Base58 в строку, содержащую цифры, а также маленькие и большие латинские буквы. Данная процедура необходима, чтобы исключить из адреса символы, которые могут двояко трактоваться при ручном наборе: например, латинская маленькая l и большая латинская I или большая буква O и цифра 0. Все эти меры направлены на дополнительную защиту от ошибочного ввода адреса при совершении транзакций. По завершении всех необходимых процедур Биткоин-адрес может приобрести, например, следующий вид:

Теперь у пользователя есть свой адрес в сети Биткоин, хотя сама сеть об этом пока еще ничего не знает, поскольку пользователь осуществлял генерацию адреса на своем локальном устройстве. Но имея пару ключей и сформированный из них адрес, пользователь может получать на него криптосредства, а затем отправлять их на любой другой адрес, который пожелает. И тогда с первой транзакцией, по мере ее распространения по сети, об этом адресе начнут узнавать как о новом участнике системы. Возникает вопрос: куда именно попадет транзакция? Логично было бы предположить, что она должна быть включена в блок, который в данный момент формируется сетью. Однако это не совсем так — сначала транзакция рассылается по всей сети через прямые соединения между различными узлами. При этом каждый из узлов, получив новую транзакцию, осуществляет ее проверку на «валидность». Узлы проверяют, располагает ли в действительности отправитель той суммой, которую он желает переслать. Осуществить такую проверку возможно, вычисляя все «непотраченные выходы» по предыдущим транзакциям в пользу данного отправителя. Также математически проверяется соответствие цифровой электронной подписи отправителя указанному им своему открытому ключу. Это нужно для того, чтобы удостовериться, что отправитель транзакции обладает закрытым ключом от адреса, с которого он собирается потратить деньги. Если транзакция успешно прошла все необходимые проверки, то она попадает во временное хранилище, которое называется «мемпул» (mempool).

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

Если учесть тот факт, что размер блока в сети Биткоин ограничен одним мегабайтом, а средний размер транзакции составляет около 300 байт, то в один блок можно поместить около 4000 транзакций, что само по себе достаточно немного. Сеть Биткоин настроена таким образом, что каждый новый блок создается примерно один раз в десять минут, поэтому пропускная способность всей сети составляет около семи транзакций в секунду. В периоды повышенной нагрузки на сеть, когда количество транзакций может существенно возрасти, мемпул начинает сильно увеличиваться в своих размерах, в то время как скорость включения транзакций в блоки уменьшается. Поэтому, чтобы транзакция попала в новый блок как можно быстрее, отправители начинают увеличивать комиссию. В декабре 2017 года был отмечен рекордный размер мемпула — около 140 мегабайт, при этом количество транзакций, ожидающих обработки, превысило 200 000. Однако уже спустя полгода напряжение в сети Биткоин существенно снизилось, величина мемпула упала до единиц мегабайт, а комиссия за обработку транзакций вернулась к обычным значениям.

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

Все эти данные имеют существенный размер: по состоянию на весну 2019 года объем базы данных Биткоин составлял около 570 000 блоков и занимал около 250 гигабайт на дисковом пространстве. Для тех, кто не желает выделять место для хранения столь приличного объема данных, имеет смысл воспользоваться возможностью получить статус «легкого клиента», когда вместо всего объема информации он скачивает себе только заголовки блоков без списка транзакций. В этом случае ему необходимо получить на свое устройство всего лишь несколько сотен мегабайт информации, что несопоставимо легче и быстрее, чем синхронизировать себе полную базу. Однако в этом случае данный «легкий» узел сети не сможет участвовать в создании новых блоков. Впрочем, этим занимаются далеко не все участники сети — весной 2019 года в сети Биткоин насчитывалось около 10 000 полных узлов, а число уникальных активно используемых адресов составляло около 640 000.

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

Если мы хотим решить эту проблему, нам нужно рассмотреть процесс создания блока как такового. Чтобы создать блок, необходимо набрать из мемпула транзакций, пока хватает места в блоке, вычислить на их основе корневое значение дерева Меркла, на базе которого вместе с остальной служебной информацией будет сформирован заголовок блока. Далее следует поместить в заголовок создаваемого блока хеш заголовка предыдущего блока, чтобы продолжить непрерывность цепочки блоков, после чего новый блок готов и его можно отправить в сеть, чтобы остальные узлы включили его в свои цепочки. А теперь зададимся вопросом: а что, если достаточно большое количество узлов одновременно начнут предлагать свои блоки остальным участникам сети? Вне всякого сомнения, начнется полнейший хаос. Каналы связи будут перегружены пересылаемой для синхронизации информацией, неизбежно возникнет огромное количество различных вариантов разветвления цепочек — в общем, сеть фактически утратит целостность и, как следствие, работоспособность.

Чтобы избежать такого негативного сценария развития событий, необходимо сделать так, чтобы количество предлагаемых сети блоков для включения в цепочку было чрезвычайно малым. В идеале — чтобы в течение среднего временного интервала между созданием блоков (в сети Биткоин — около десяти минут) конкурирующие блоки в сети вообще отсутствовали. Но как этого достичь? Ответ прост: необходимо сделать процесс создания блоков настолько сложным, чтобы внутри кванта времени, выделяемого на создание нового блока, сети предлагалось минимальное количество новых блоков. В этом случае необходимым условием для их создания должно стать решение сложной вычислительной задачи — примерно такой, как описывалось в концепте «Доказательства работы», или Proof-of-Work. В сети Биткоин подобный процесс создания блока называется «майнингом», по аналогии с добычей полезных ископаемых, где необходимо затратить серьезные усилия, прежде чем можно будет извлечь драгоценный ресурс из шахты и реализовать его, получив материальную выгоду. Как же осуществляется цифровой майнинг в сети Биткоин?

Майнинг в сети Биткоин

Занимаясь интеграцией концепта Proof-of-Work в свой проект Bit Gold, который многие считают «предтечей» Биткоина, Ник Сабо столкнулся с проблемой, когда фиксированная сложность вычислительной задачи вела к потенциальной уязвимости, которая с большой вероятностью проявилась бы в будущем. Дело в том, что совокупная вычислительная мощность сети будет со временем естественным образом расти. Произойдет это по двум причинам: во-первых, вырастет общее количество узлов, а во-вторых, согласно закону Мура, усредненная вычислительная мощность отдельно взятого узла системы будет также постепенно увеличиваться. Таким образом, через какое-то время заложенная в логике проекта фиксированная сложность вычислительной задачи перестанет быть для сети проблемой. В конечном итоге сетевые узлы превратятся в «печатные станки» для электронных денег, что неизбежно спровоцирует в системе гиперинфляцию. Стоит ли сомневаться, что после этого все узлы системы будут материально демотивированы и едва ли захотят в дальнейшем участвовать в подобном проекте.

Напомним, что суть сложновычислимой задачи в проекте Bit Gold состояла в переборе хешей различных прообразов. А конечной целью было нахождение такого хеша, который бы считался для всей сети валидным — то есть в данном случае содержал определенное количество нулей в начале строки данных. Статическая сложность вычислительной задачи стала для Сабо одним из непреодолимых препятствий, которое так и не позволило BitGold увидеть свет. Однако Сатоши Накамото в своем проекте Биткоин эту задачу решил, и, как мы сейчас убедимся, достаточно элегантно.

На самом деле для данной проблемы напрашивается очевидное решение: если статическая сложность задачи является барьером для экономической стабильности системы, то необходимо сделать ее динамической. Как нам уже известно, для того, чтобы получить n нулевых бит в начале строки хеша, надо перебрать для хеширования максимум 2n прообразов. Очевидно, что чем больше число n, тем сложность задачи экспоненциально увеличивается. Накамото предложил хешировать заголовок создаваемого блока, начав с самой маленькой сложности. В этом случае нужно было получить всего восемь нулевых символов в начале строки хеша заголовка. Поскольку один символ занимает четыре бита, то необходимо было перебрать не более 232 вариантов, то есть около 4,3 млрд. А затем, по мере увеличения количества узлов в сети, которые пытаются искать валидные хеши, пропорционально поднимать сложность, увеличивая требования к количеству стартовых нулей.

Когда Накамото запустил свою сеть Биткоин в начале января 2009 года, в ней, помимо самого создателя системы, не было других участников. Поэтому первые блоки «намайнил» именно сам Накамото. Когда в сети Биткоин стали появляться другие узлы, сложность сети начала постепенно увеличиваться. Логика управления сложностью была заложена следующая: сложность сети должна быть такова, чтобы вне зависимости от количества узлов, которые ищут блоки, а также от их вычислительной мощности новый блок можно было бы найти в среднем не более и не менее чем за десять минут. Сложность пересчитывалась каждые 2016 блоков, то есть примерно один раз в две недели. Совокупное, реально затраченное время нахождения всех 2016 блоков разделялось на их количество, и полученный результат сравнивался с десятиминутным эталоном. Если блоки находились в среднем быстрее, сложность увеличивалась — то есть поднимались требования к количеству нулей в хеше заголовка блока. Если медленнее — требования уменьшались.

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

Порядковый номер блока — информация сугубо статичная, которая меняться не будет. Номер версии блока также представляет собой фиксированное значение. Теперь что касается времени создания блока, которое выражается в секундах, прошедших с 1 января 1970 года. Логично было бы предположить, что оно будет меняться не чаще раза в секунду, что для нашей задачи является крайне низкой динамикой. Число транзакций в блоке и вычисленное из них корневое значение дерева Меркла — информация также относительно постоянная. Однако бывают случаи, когда во время поиска валидного хеша майнеру поступают новые транзакции с более высокой комиссией, чем те, что он ранее включил в блок, — тогда блок будет иметь смысл пересобрать заново. Но данная процедура также имеет достаточно низкую динамику и проблем с необходимым разнообразием хешей не решает.

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

По сути, процедура майнинга и сводится к поиску подходящего значения этого самого нонса, который, будучи добавленным к заголовку блока, позволит майнеру вычислить валидный хеш, дающий ему право на создание нового блока, безусловно принимаемого всей сетью. Однако процедура поиска необходимого значения нонса достаточно сложна. В сети Биткоин используется алгоритм хеширования SHA-256, который предполагает два цикла по 64 итерации хеширования каждый. По состоянию на весну 2019 года сложность сети Биткоин требует наличия 18 первых нулевых символов для нахождения валидного хеша, соответствующим 72 нулевым битовым значениям. Что требует примерно 272 или около 5 · 1021 переборов хешей. Много это или мало? Давайте попробуем сравнить это число, скажем, с количеством песчинок на всех пляжах нашей планеты. Ученые сопоставляют количество песчинок с величиной, приближенной к 1018. Таким образом, сложность нахождения нужного нам валидного хеша с такими требованиями сопоставима с процедурой перебора всех песчинок примерно на 5000 планет, условно подобных Земле. Вот пример такого валидного хеша, с требованием по сложности в 18 начальных нулей:

Как уже упоминалось, первые блоки сети Биткоин Сатоши Накамото находил самостоятельно и использовал для этого обычный компьютер. Как, собственно, и другие участники сети, которые стали постепенно в ней появляться. И на том самом начальном уровне сложности обычного процессора компьютера вполне хватало, чтобы находить блок за положенные в среднем десять минут. Однако по мере роста количества участников сети сложность стала автоматически пересчитываться в сторону увеличения, и в какой-то момент для обычного компьютерного процессора вычислительная задача стала «неподъемной». Тем не менее майнеры быстро нашли выход — они задействовали для поиска блоков не центральный процессор, а тот, который был установлен на их видеокартах. В силу специфики своей вычислительной архитектуры графический процессор гораздо быстрее рассчитывал хеши, чем центральный. Но через определенное время сложность возросла настолько, что и графический процессор перестал справляться с майнингом блоков. Правда, решение было найдено довольно скоро: в июне 2012 года компания Butterfly Labs начала поставлять специальное программно-аппаратное обеспечение под названием ASIC (Application-Specific Integrated Circuit, или «интегральная схема специального назначения»). Фактически это был небольшой специализированный компьютер, полностью оптимизированный только под одну задачу — перебирать хеши по алгоритму SHA-256 и делать это исключительно быстро. Началась эра сначала частного, а затем и промышленного майнинга Биткоина с использованием самых новейших аппаратных средств, производимых различными компаниями, активно конкурирующих между собой.

Для того чтобы понять, насколько увеличилась сложность сети за первые десять лет ее существования, рассмотрим понятие скорости перебора хешей, или «хешрейт» (hashrate). Различают хешрейт как отдельного устройства, так и совокупный хешрейт всей сети. Очевидно, что чем выше общий хешрейт сети Биткоин, тем выше сложность нахождения валидного хеша для создания блока. Иначе майнеры находили бы блоки слишком быстро, что противоречит логике, заложенной в блокчейн-систему. Вот как менялся хешрейт на протяжении десяти лет существования сети Биткоин (на примере логарифмического графика):

Первые устройства ASIC работали с хешрейтом 4,5 Гигахеш в секунду. То есть если бы они использовались в самом начале работы сети Биткоин на минимальной сложности, они находили бы валидный хеш примерно за одну секунду. Эта скорость была в 600 раз выше той, на которой вычислял первые блоки сам Сатоши Накамото, используя процессор своего компьютера. Устройства ASIC образца весны 2019 года, поставляемые компанией Bitmain, осуществляют перебор хешей со скоростью до 53 Терахеш в секунду. Это более чем в 10 000 раз быстрее по сравнению с первыми устройствами, представленными почти за семь лет до этого. Однако совокупный хешрейт сети Биткоин на своих пиковых показателях достигал совершенно космических значений — примерно 60 эксахешей в секунду, что составляет величину перебора всей сетью 6 · 1019 хешей за одну секунду. И тем не менее сложность задачи поиска валидного хеша такова, что даже настолько огромная совокупная вычислительная мощность всей сети позволяет майнить один блок за те же в среднем десять минут. О чем это говорит?

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

Рассматривая майнинговые фермы, объединенные в вычислительные пулы, мы плавно подходим к основной проблеме майнинга на основе консенсуса Proof-of-Work — исключительно большому потреблению электричества при работе майнингового оборудования. Современный высокоскоростной ASIC типа Bitmain S17 Pro потребляет мощность 2250 Вт, что составляет значительную величину, особенно если учесть, что из таких устройств комплектуют целые майнинговые фермы. К тому же эти устройства в процессе работы довольно сильно нагреваются, и их необходимо постоянно охлаждать, на что также расходуется электроэнергия. Организуя свою майниговую ферму, предприниматель несет в первую очередь расходы на приобретение и доставку самого майнингового оборудования, а также на аренду и оснащение специального помещения, где будет функционировать ферма.

Но все же основной статьей расхода для «фермера» будет оплата потребленного на майнинг электричества. Именно его стоимость и является наиболее критичным параметром при расчете доходности от деятельности по майнингу различных криптовалют, в первую очередь Биткоина. Совокупное же годовое потребление электроэнергии всей сетью Биткоин сопоставимо с потреблением электроэнергии крупным государством, входящим в список первых 30 стран мира по данному параметру. Речь идет о величине в 30–35 тераватт-часов в год, что составляет примерно 0,5–0,6% всего суммарного потребления электроэнергии во всем мире. Аналитики прогнозируют, что если динамика увеличения потребления электричества сетью Биткоин сохранится на текущем уровне, то через три–четыре года Биткоин-майнеры начнут потреблять всю производимую в мире электроэнергию. Понятно, что подобный сценарий едва ли имеет шанс на реализацию — государственные регуляторы просто не позволят майнерам его осуществить.

Учитывая вышеизложенные факторы, следует признать, что будущее майнинга на базе консенсуса Proof-of-Work представляется достаточно туманным. Весьма вероятно, что правительства многих стран начнут ограничивать майнеров в потреблении ими электричества, например, через установку нормативных квот, которые им придется приобретать на специальных аукционах. Не исключено также, что в каких-то странах с особым дефицитом электроэнергии майнинг будет и вовсе законодательно запрещен. Особенно проблематичным представляется то, что все потребленное электричество уходит на решение математической задачи, ценность которой каждые десять минут полностью утрачивается. Иными словами, как только новый блок создан, решение задачи начинается сначала. Очевидно, что это исключительно неэффективное использование такого ценного ресурса, как электроэнергия — она расходуется фактически впустую, не принося человеческой цивилизации никакой существенной пользы (за исключением владельцев и сотрудников энергетических компаний).

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

Возвращаясь к проблематике майнинга блоков в сети Биткоин, мы приходим к выводу, что это довольно дорогостоящая процедура для тех, кто инвестирует в нее свои материальные активы. Поэтому для них должна существовать прямая монетарная мотивация, чтобы они могли и дальше этим заниматься. Как упоминалось ранее, майнеры, создав блок, отчисляют в свою пользу всю комиссию от транзакций, которые они поместили в тело созданного ими блока. Однако совокупная величина этих комиссий не так уж велика, чтобы оправдать понесенные затраты для тех, кто содержит дорогостоящие инфраструктуры для майнинга. Также до сих пор мы не заостряли внимание на достаточно важном аспекте: для того, чтобы начать осуществлять денежные транзакции в сети Биткоин, эти средства должны в сети изначально откуда-то появиться. Поэтому основным вознаграждением для тех, кому посчастливилось успешно осуществить создание блока, является так называемое «майнинговое вознаграждение». Речь идет о сумме, выраженной в цифровых монетах Биткоин, которую получает майнер в момент создания каждого нового блока. Теперь мы вплотную подошли к понятию «криптовалюта» на примере цифровых монет сети Биткоин. Что же это за монеты, как и в каком количестве они появляются в сети Биткоин и какова может быть их материальная ценность?

Биткоин как криптовалюта

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

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

В качестве начального условия Накамото установил, что в момент запуска системы вознаграждение за создание блока будет составлять 50 биткоинов. А затем каждые четыре года оно будет сокращаться вдвое до тех пор, пока общее число биткоинов в системе не достигнет величины в 21 млн монет. Согласно расчетам, последний биткоин в системе будет создан около 2140 года, при этом уже к 2036 году будет получено более 99% всех монет. А после того как все монеты будут выпущены и вознаграждение за создание блока упадет до нуля, майнерам придется довольствоваться лишь транзакционной комиссией, которую они будут отчислять в свою пользу при создании новых блоков. Предполагается, что к тому моменту стоимость одного биткоина будет настолько велика, что даже отсутствие майнингового вознаграждения никак не скажется на мотивации майнеров, поскольку собираемая ими транзакционная комиссия с лихвой окупит все их издержки на майнинговые процедуры.

К середине 2018 года майнинговое вознаграждение уже дважды сокращалось от первоначально установленного Накамото значения — сначала в 2012 году до 25 биткоинов, а затем в 2016 до 12,5 монет. Следующее снижение вознаграждения ожидается в мае 2020 года, и его величина составит 6,25 биткоинов. При этом совокупная транзакционная комиссия может доходить до одного биткоина и даже более. Однако это происходит только во время повышенной нагрузки на сеть, когда транзакций становится слишком много и комиссия за их включение в блок растет. В обычное же время при отсутствии серьезной нагрузки совокупная комиссия всех транзакций в блоках составляет значительно меньшие суммы.

Ограничивая максимально возможный объем конечной эмиссии биткоинов величиной в 21 млн монет, Накамото преследовал в первую очередь цель защиты от инфляции. Создатель проекта надеялся, что стоимость биткоина в перспективе будет только расти и может в конечном итоге достичь весьма серьезных величин. Поэтому было определено, что каждый биткоин может дробиться на 100 млн частей, или, другими словами, иметь восемь знаков после запятой. Мельчайшую частичку в 0,00000001 биткоина впоследствии стали называть «сатоши» в честь создателя системы Биткоин. Очевидно, что если предел эмиссии жестко ограничен, то вместо инфляции система будет иметь дело с ее полной противоположностью — дефляцией, когда все товары и услуги, номинированные в биткоинах, будут со временем уменьшаться в абсолютных значениях своей стоимости. Но даже если когда-нибудь стоимость одного сатоши станет равна одному американскому центу, общая ценность всех монет биткоин составит около $21 трлн, что вполне позволит этой криптовалюте стать массовым платежным средством в мировом масштабе.

По сравнению с традиционными формами денег биткоин серьезно защищен от несанкционированного воспроизведения — на страже этого процесса стоят криптостойкие математические алгоритмы. Однако даже у системы Биткоин есть одна уязвимость, которую, впрочем, чрезвычайно сложно реализовать даже в теории. Эта уязвимость называется «атакой 51%», и ее суть состоит в том, что в сети может появиться узел (или группа узлов) с исключительной вычислительной мощностью, составляющей более 50% всего совокупного хешрейта сети. Другими словами, эти узлы начинают майнить новые блоки быстрее, чем вся остальная сеть. В сети Биткоин есть правило, что в случае, если в системе образуются разветвления в цепочке блоков, сеть принимает более длинное ответвление за истинное. Таким образом, более короткое ответвление со всеми блоками, включенными в него, просто не принимается сетью и отбрасывается. Автоматически исключаются также все транзакции, которые были помещены в блоки не принятого сетью ответвления.

Подобный сценарий развития событий предполагает, что только лишь самого факта включения транзакции в один из блоков явно недостаточно. Согласно правилам, требуется определенное время, чтобы убедиться, что транзакция не попала в ветвление блоков, которое, возможно, будет отброшено в пользу какой-то более длинной альтернативной цепочки. Обычно считается, что любое из параллельных ответвлений не может быть длиннее шести блоков, то есть вероятность возникновения такой ситуации исключительно мала. Поэтому предполагается, что шести подтверждений для любой транзакции в сети Биткоина достаточно, чтобы она считалась окончательно состоявшейся. То есть если после блока, куда была помещена транзакция, в цепочку было включено еще пять блоков подряд, то это и есть те самые шесть подтверждений, необходимых для признания транзакции совершенной (один блок означает одно подтверждение). Другими словами, для полного подтверждения транзакции необходимо время, примерно равное шести десятиминутным отрезкам или одному часу. Возвращаясь к проблеме «атаки 51%», представим, что какой-то узел стал вычислительно превалировать в сети и именно его блоки стали складываться в ту цепочку, которую остальная сеть вынуждена признать истинной. Чем же это плохо для сети в целом?

Во-первых, доминирование одного узла или их группы, объединенных общей целью, может привести к тому, что этот консорциум злоумышленников может взять под контроль весь майнинг блоков и, как следствие, все новые транзакции сети. Помимо того, что они фактически монополизируют доход от вознаграждения за майнинг, они смогут включать в блоки только угодные им транзакции. И в первую очередь будут включаться транзакции, которые допускают повторное использование одних и тех же монет, то есть осуществляют «двойную трату». Единственное, что они не могут сделать — это вмешиваться в данные ранее созданных блоков, для этого даже 51% вычислительной мощности будет явно недостаточно. Дело в том, что в этом случае возникнет необходимость пересчитать все хеши блоков, начиная от изменяемого и заканчивая последним в цепочке с учетом внесенных модификаций. В результате нужно будет найти новые нонсы для всех пересобранных блоков и предложить сети новую цепочку довольно приличной глубины. В то же время вся остальная сеть продолжит обсчитывать и формировать блоки, начиная с последнего, принятого ранее всей сетью (то есть гораздо более позднего блока, нежели тот, который обсчитывают злоумышленники). Что же касается вопроса двойной траты, то это действительно может стать серьезной проблемой. Кстати, именно она в свое время не позволила создать децентрализованные цифровые деньги в «доблокчейновый» период. Для того чтобы понять, почему «атака 51%» позволит осуществлять двойную трату, рассмотрим следующий пример.

Предположим, в сети имеется узел, обладающий большей вычислительной мощностью, чем все остальные узлы вместе взятые. Данный узел выбирает какой-то из блоков в качестве «точки отсчета» и начинает осуществлять от нее майнинг новых блоков, не демонстрируя их некоторое время всей остальной сети. Одновременно с этим он будет расходовать имеющиеся у него криптосредства в основной цепочке, пока не дождется, что все они будут однозначно подтверждены сетью. То есть в основной цепочке появится еще минимум пять блоков после того, в который были помещены расходные транзакции вредоносного узла. Затем узел раскроет всей сети параллельно созданную им альтернативную цепочку — более длинную, поскольку вычислительная мощность этого узла была совокупно больше, чем у всех остальных, и сеть будет вынуждена признать данное ответвление как истинное. При этом старые блоки, ранее рассчитанные и подтвержденные всей сетью, придется отбросить, то есть придать им статус так называемых «осиротевших блоков» (orphanedblocks), утративших связь с главной цепочкой. Понятно, что вместе с ними будут автоматически отброшены и все расходные транзакции вредоносного узла, как будто их и не существовало вовсе.

Нетрудно догадаться, что альтернативные блоки, предложенные сети самим узлом-мошенником, никаких принадлежащих ему расходных транз­акций содержать не будут. Таким образом, несмотря на то, что злоумышленник потратил свои средства ранее в «предыдущей реальности» и получил за них какие-то товары, услуги или даже иную криптовалюту, он через какое-то время возвращает все свои активы назад, и сеть будет вынуждена с этим соглашаться. Казалось бы, для любой блокчейн-системы, создающей блоки по принципу Proof-of-Work, это убийственная проблема. Однако на практике реализовать подобный сценарий исключительно сложно — и организационно, и монетарно, а в ряде случаев это может даже не иметь практического смысла. Попробуем объяснить, почему.

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

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

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

В истории сети Биткоин был случай, когда 13 июня 2014 года майнинговый пул Ghash на несколько часов получил контроль над 51% вычислительной мощности всей сети. Произошло это естественным образом по причине значительного увеличения количества участников пула. Однако сразу же после того, как было зафиксировано превышение хешрейта, многие участники пула остановили свои процессы майнинга, а сам пул прекратил регистрацию и подключение новых пользователей. Это было сделано намеренно, с целью предотвращения возможных деструктивных последствий для сети в целом. Спустя некоторое время, когда суммарный хешрейт сети Биткоин существенно вырос, подобные ситуации ни для одного из подобных пулов уже возникнуть не могли.

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

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

Биткоин как ценность

Через девять дней с момента запуска сети Биткоин, а именно 12 января 2009 года, Сатоши Накамото осуществил в ней исторически первую транзакцию. Он отправил в качестве теста десяток биткоинов другому участнику сети, который появился в ней почти сразу же после самого Накамото. Им оказался американский программист и криптоэнтузиаст Хэл Финни, который еще в 2004 году написал первый алгоритм Proof-of-Work для программного обеспечения протокола PGP, обеспечивающего функционал шифрования с открытым ключом. Транзакция была включена в блок под номером 170 и стала первой в истории физически осуществленной блокчейн-транзакцией между двумя участниками сети. Мог ли тогда предполагать Сатоши Накамото, что ради целей тестирования он расстался с цифровыми монетами, общая стоимость которых меньше чем через десять лет будет исчисляться десятками и даже сотнями тысяч долларов? На момент совершения первой транзакции биткоин никакой монетарной ценностью не обладал. Каким же образом так получилось, что вскоре за него стали выкладывать на криптовалютных биржах серьезные фиатные суммы?

Для того чтобы ответить на этот вопрос, необходимо понять, из чего складывается ценность биткоина. История обычных денег всем хорошо известна: сначала в ходу были только монеты из драгоценных металлов — золота и серебра. В этом случае они представляли ценность сами по себе. Затем человеческая цивилизация перешла на бумажные банкноты, которые сначала гарантировались золотыми запасами государственных банков, а после отмены золотого стандарта стали обеспечиваться внутренним валовым продуктом. По крайней мере, этот факт всегда формально декларируется национальными правительствами. На самом деле реальная ситуация гораздо сложнее — экономика каждого государства постоянно сталкивается с такими явлениями, как инфляция, безработица, объем внешнего долга, а также прочими макроэкономическими факторами. Каждый из них оказывает свое влияние на ценность национальной валюты, и в том числе на колебание ее курса по отношению к валютам других стран мира.

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

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

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

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

Одной из главных причин критики биткоина является отсутствие у него какого-либо ценностного обеспечения. Остановимся на этом чуть подробнее. Описывая концепт Proof-of-Work в одной из предыдущих глав, мы в качестве примера анализировали, на чем может базироваться ценность золота. Среди прочих аргументов отмечалось, что обладание золотом является результатом приложенного труда специалистов по его геологической разведке, шахтерской добыче, литейной обработке, грузовой транспортировке, промышленному производству из него изделий и, наконец, их продажи конечному потребителю. Очевидно, что в обычной рыночной ситуации стоимость изделия из золота — будь то слиток, монета или ювелирное украшение — не может быть меньше, чем совокупная стоимость затраченных трудовых и материальных ресурсов на его производство. Добавим также заложенную норму доходности для каждого из звеньев этой «цепочки ценности» и в итоге получим некую логически обоснованную стоимость конечного продукта, ниже уровня которой его производство не будет иметь никакого коммерческого смысла.

Теперь спроецируем эту ситуацию на процессы майнинга криптовалют, в частности — биткоина. И мы также увидим здесь цепочку формирования ценности, очень похожую на любую другую при производстве какого-либо продукта, включая в том числе и золото. Приобретение компьютеров или специализированного майнингового оборудования, аренда и оснащение помещений для криптоферм, оплата электроэнергии, необходимой для работы ASIC-майнеров, заработная плата IT-специалистов по обслуживанию фермы, налоговые платежи — вот далеко не полный перечень издержек предпринимателя-майнера. Что, в свою очередь, означает, что на каждый добытый при помощи майнинга биткоин приходится определенная сумма монетарных затрат, которая и будет нижней «граничной» планкой ценности конечного произведенного продукта — криптовалютной монеты. Когда Сатоши Накамото добывал свои первые биткоины, в силу минимальной сложности сети его издержки были близки к нулю, равно как и сама ценность биткоина на тот момент. Однако спустя годы процесс майнинга стал весьма затратным мероприятием.

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

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

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

И, наконец, один из важнейших факторов доверия к криптовалюте со стороны конкретного человека — это, собственно, его личное осознание того, насколько массовым является доверие к этому же активу со стороны других участников рынка. Именно это совокупное доверие общества также является существенным дополнением к ценности любого финансового актива, в том числе и криптовалютного. Когда в XVIII веке в Европе стали появляться бумажные деньги, доверие к ним было весьма слабым. В течение нескольких тысячелетий все торговые отношения строились на циркуляции монет, созданных из драгоценных металлов, в первую очередь — из золота. Разве что индейцы доколумбовой Америки оказались несколько в стороне от этих процессов. Они делали из золота все что угодно, кроме денег — по крайней мере, до тех пор, пока конкистадоры не «вовлекли» их в мировую финансовую систему. Что же касается бумажных ассигнаций, то эволюция доверия к ним заняла сотни лет. И это при том, что в течение длительного периода государственные банки продолжали гарантировать обмен банкнот на золото из своих резервов, практически до самой отмены золотого стандарта в 70-х годах прошлого века.

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

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

Биткоин как инвестиция

На ранних этапах работы сети Биткоин многие майнеры, которые занимались добычей криптомонет на низких уровнях сложности, относились к этому не слишком серьезно. Скорее они видели в этом элементы игры, чем полагали себя частью финансовой системы нового типа. В результате с первыми полученными биткоинами майнеры поступали сообразно этому восприятию: делали друг другу тестовые переводы, дарили, выкидывали за ненадобностью или просто теряли вместе с секретными ключами от своих цифровых кошельков. Тем не менее уже 5 октября 2009 года биткоин получил свою первую в истории рыночную монетарную оценку, которая базировалась на реально проведенных сделках. За $1 давали 1309 биткоинов, то есть одна монета стоила около 0,08 американского цента.

Впрочем, курс довольно быстро стал расти. В связи с этим хотелось бы упомянуть об одной истории, которая произошла в конце 2009 года в Норвегии, где один местный студент по имени Кристофер Кох писал дипломную работу по криптографии. Один из разделов своей дипломной работы он решил посвятить такому относительно недавно появившемуся явлению из области криптографии, как проект Биткоин. В процессе исследования он в качестве теста приобрел 5000 монет биткоин, затратив на это сумму, примерно эквивалентную $27. Это соответствовало стоимости чуть больше половины цента за одну монету. После того, как диплом был написан и защищен, о приобретенных биткоинах Кох благополучно забыл. Однако ему пришлось вспомнить о них спустя четыре года, когда эта криптовалюта стала получать все большую известность и информация о ней стала активно распространяться по всему миру. Осознав, что является обладателем значительного количества цифровых монет, он бросился искать свои давно заброшенные виртуальные активы. Подобрать пароль от своего биткоин-кошелька бывшему студенту удалось с большим трудом, однако усилия того стоили. Выяснилось, что его полузабытая случайная инвестиция в $27 всего за несколько лет превратилась в драгоценный клад, стоивший около $1 млн. То есть за это время стоимость одного биткоина выросла в сотни раз. Благодаря своей дипломной работе Кох неожиданно стал состоятельным человеком. Потратив изрядную долю буквально упавшего на него с неба богатства на недвижимость, часть криптомонет Кох все же решил приберечь на кошельке в надежде на дальнейший рост биткоина, который и не замедлил произойти в последующие несколько лет.

Но далеко не все истории имели столь счастливый конец. Гораздо большую известность приобрел эпизод, связанный с первым в истории Биткоина приобретением физического товара за криптовалюту. Произошло это в конце мая 2010 года, когда американский программист Ласло Ханеч (Laszlo Hanyecz) бросил на биткоин-форуме клич, что готов заплатить 10 000 биткоинов, если ему доставят в город Джексонвилль, штат Флорида, две пиццы общей стоимостью примерно $25. Прошло целых четыре дня, пока контрагент по сделке не был найден, после чего пиццы были доставлены по означенному адресу, а соответствующая сумма в биткоинах была переведена в качестве оплаты. Произошло это 22 мая, и с тех пор этот весенний день стал первым и пока единственным отраслевым памятным днем для всей блокчейн-индустрии, который получил название Bitcoin Pizza Day. В этот день криптоэнтузиасты во всем мире едят пиццу и, используя отнюдь не лестные эпитеты, обсуждают провидческие таланты того незадачливого майнера, который заплатил за две пиццы эквивалент нескольких десятков миллионов долларов. Именно в сумму такого порядка те самые 10 000 биткоинов стали оцениваться через семь лет. Тем не менее нельзя сказать, что курс биткоина за первые десять лет своего существования только непрерывно увеличивался. Цена биткоина, как и любого другого финансового инструмента, была подвержена различным колебаниям и коррекциям в силу факторов самой различной природы — как технического, так и фундаментального характера.

Первая торговая площадка для обмена биткоинов на фиатную валюту появилась примерно через год после запуска проекта Биткоин — 6 февраля 2010 года начала свою работу биржа Bitcoin Market. Однако наибольшую известность в ранний период организованной торговли биткоинами завоевала другая биржевая площадка — Mt. Gox. Открылась она 17 июля 2010 года и довольно быстро снискала популярность среди биткоин-трейдеров, став, по сути, «биржей номер один» для реализации сделок с криптовалютой. Строго говоря, сайт проекта Mt. Gox был запущен еще в 2006 году для организации электронной биржевой торговли игровыми картами популярной настольной игры Magic The Gathering. Из сокращения названия игры, собственно, и взялось название биржи. Разработчик Джед Маккалеб, создавший биржу, весной 2011 года продал проект французскому программисту Марку Карпелесу, который в тот момент жил в Японии.

Как раз примерно на это время пришелся первый «бум» криптовалютной торговли, и цена биткоина начала расти. Однако уже в июне того же года биржа была атакована хакерами. В результате чего с биржевых счетов было украдено несколько десятков тысяч биткоинов, каждый из которых к тому моменту оценивался примерно в $32. Несмотря на то что «дыру» в безопасности системы удалось довольно быстро ликвидировать, инвестиционное доверие к биткоину было серьезно подорвано. Владельцу биржи и его сотрудникам пришлось приложить немало усилий, чтобы остановить панику среди трейдеров. После чего курс биткоина медленно возобновил свой рост, постепенно «отыгрывая назад» произошедшее масштабное падение цены. Всесторонне учтя опыт прошедшей атаки, Карпелес приложил серьезные усилия для повышения безопасности работы биржи. Среди прочих мер была в том числе введена двухфакторная идентификация на базе генераторов одноразовых паролей, используемых трейдерами при входе на биржу.

Эпоха наивысшего расцвета и благоденствия Mt. Gox пришлась на последующие три года, хотя и в этот период у биржи иногда случались разного рода неприятности. В какой-то момент на деятельность торговой площадки обратили внимание финансовые регуляторы США. Результатом стало блокирование банковских счетов американского подразделения биржи, где размещалось около $4,5 млн. Средства в конечном итоге удалось вернуть, однако это не решило всех проблем с американской банковской системой в целом. Представители американской финансовой индустрии весьма скептически относились к деятельности биржи, подозревая ее в соучастии в массовом отмывании денег посредством торговли криптовалютами.

Тем не менее курс биткоина продолжал расти и к ноябрю 2013 года «пробил» отметку в $1200 за один биткоин. При этом через биржу Mt. Gox в тот период проходило около половины всех транзакций сети Биткоин. Однако в это же время работа биржи начала давать сбои, что особенно выражалось в задержках вывода средств клиентов со счетов Mt. Gox — как криптовалютных, так и фиатных. Трейдеры начали проявлять недовольство, а многие из них и вовсе ушли торговать на конкурентные биржевые площадки. В блокчейн-среде стали циркулировать упорные слухи о внутренних проблемах в Mt. Gox, пока, наконец, в феврале 2014 года не наступила трагическая развязка всей интриги. С начала февраля биржа прекратила осуществлять любые операции по выводу средств со счетов. А 23 февраля Карпелес опубликовал немногословное сообщение о полном крахе биржи, после чего сайт проекта пропал из интернета.

Среди клиентов биржи ожидаемо возникла паника. На некоторых блокчейн-форумах появилась информация в форме «утечки» внутреннего документа биржи, где говорилось о похищении хакерами 744 000 биткоинов с биржевых счетов. Еще через несколько дней, 28 февраля, руководство биржи подало официальное заявление о банкротстве. Это не замедлило максимально негативно отразиться на курсе биткоина — он рухнул до уровня в $550. Официально была признана потеря 650 000 биткоинов, хотя до конца так и не удалось выяснить, действительно ли имела место хакерская атака или же крах был инспирирован самим владельцем. Были подозрения, что Карпелес перевел огромное количество биткоинов, принадлежащих биржевым трейдерам, на некий тайный адрес в надежде впоследствии воспользоваться ими в личных целях. Несмотря на формально проявленную готовность Карпелеса всячески содействовать расследованию, весной 2019 года его приговорили к 2,5 года тюремного заключения. Пока шло следствие и судебное разбирательство, банкротные управляющие проектом сумели вернуть клиентам биржи некоторую часть средств, которые удалось обнаружить и консолидировать для последующих выплат. После краха Mt. Gox биткоину потребовалось около трех лет, чтобы восстановить ранее завоеванные ценовые позиции. При этом количество криптовалютных бирж за этот же период существенно выросло. В настоящий момент в интернете присутствуют сотни торговых площадок, активно предлагающих услуги обмена различных цифровых монет как друг на друга, так и на фиатные платежные средства.

К концу 2017 года вокруг блокчейн-индустрии сложилась ситуация, которую в криптосообществе стали называть «хайпом» — от английского слова hype, близкого по значению к понятиям «шумиха», «ажиотаж» или «навязчивая реклама». Этот период был отмечен особенно резким ростом почти всех криптовалют, и в первую очередь биткоина. Курс главной криптовалюты постоянно устанавливал ценовые рекорды, пока, наконец, перед самым Рождеством не достиг отметки, превышающей $20 000. К этому моменту про биткоин в мире не услышал только ленивый, включая и тех, кто никогда не имел отношения ни к информационным, ни к финансовым технологиям. Впрочем, начиная с января 2018 года биткоин подвергся серьезной ценовой коррекции, потеряв в течение года около 75% своей стоимости. Как результат многие инвесторы, которые имели неосторожность приобрести биткоин на ценовом пике, понесли серьезные финансовые убытки. Однако же те, кто делал инвестиции еще в первой половине 2017 года или ранее, до сих пор находятся в прибыльной зоне — настолько резко вырос курс биткоина во второй половине года. Даже в условиях сильного ценового падения вера в будущее биткоина все еще сохраняется у большинства как прямых инвесторов, так и у косвенных — майнеров. Данная категория предпринимателей продолжает наращивать уровень хешрейта в сети Биткоин исключительно высокими темпами. Это происходит несмотря на то, что майнинг в настоящий момент является практически неприбыльным, а местами даже убыточным мероприятием. И здесь необходимо понимать, от каких факторов зависит эффективность майнинга биткоина и схожих с ним криптовалют, добываемых на основе принципа доказательства работы (Proof-of-work).

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

На текущий момент в отрасли криптодобычи сложилась ситуация, когда около 80% майнинговых мощностей кристаллизовались в мировой промышленной «кузнице» — в Китае. Именно в этой стране естественным образом сложились условия, наиболее благоприятствующие этому виду деятельности. Если, конечно, не принимать во внимание несколько недружественную и откровенно настороженную позицию китайского правительства по отношению к криптовалютам в целом. Тем не менее основное оборудование для майнинга производится именно в Китае, поэтому местным майнерам нет необходимости заказывать дорогостоящую трансграничную доставку через полмира, а также нести дополнительные расходы на таможенные платежи. Электростанции в горных районах страны позволяют получить приемлемые расценки на электроэнергию, а относительно холодный климат в этих же регионах обеспечивает достаточно бюджетное решение проблемы перегрева оборудования. В случае, если выбрано технологическое решение в пользу водяного охлаждения, то, как правило, в этих же местах к услугам майнеров протекают холодные горные реки. Стоимость рабочей силы в периферийных районах Китая также относительно невелика, что является еще одним немаловажным фактором в пользу выбора именно этой страны для инвестиций в деятельность по майнингу криптовалют.

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

Биткоин как средство платежа

После того как цифровые монеты сети Биткоин получили серьезную монетарную оценку на финансовом рынке, владельцы значительного количества этих цифровых активов неожиданно для всех (а возможно, и для самих себя) стали состоятельными людьми. Криптовалютные капиталы многих из них оцениваются в сотни миллионов, а в некоторых случаях и миллиардов долларов. Разумеется, первым, на кого обратили внимание, стал сам создатель проекта Биткоин — Сатоши Накамото. Будучи первым майнером в собственноручно созданной им сети, он сумел добыть большое количество монет, поскольку начальный уровень сложности системы этому весьма благоприятствовал. Некоторое время считалось, что Накамото успел заработать около 1 млн монет, однако, по последним исследованиям, это число не превышает 700 000. Но даже в этом случае капитализация его состояния оценивается на данный момент примерно в $3,5 млрд. Так загадочный изобретатель попал в мировой рейтинг миллиардеров журнала Forbes, а в период ценовых рекордов биткоина Накамото даже занимал место в пятом десятке списка.

По этому поводу нельзя не припомнить небезызвестных братьев-­близнецов Кэмерона и Тайлера Унинклвоссов. Бывшие студенты Гарварда и ­спортсмены-олимпийцы в свое время сумели отсудить у создателя Facebook Марка Цукерберга около $65 млн в качестве компенсации за якобы украденную у них идею социальной сети. Часть полученных средств братья удачно вложили в биткоин, когда он еще стоил чуть более $100 за монету. Предполагается, что они приобрели более 100 000 биткоинов, что делает их обладателями состояния, близкого к полумиллиарду (в зависимости, разумеется, от колебаний рыночного курса биткоина на биржах). Ходили слухи, что секретные ключи от своих биткоин-адресов предприимчивые братья распечатали на бумаге, которую затем разрезали на несколько частей и поместили каждую отдельно в банковские сейфы в разных городах США. Столь сложная операция была проведена, дабы защитить свои цифровые активы от возможного похищения сетевыми злоумышленниками.

Ну и, наконец, стоит еще раз упомянуть о бывшем владельце биржи Mt. Gox Марке Карпелесе, подозреваемом в хищении примерно 650 000 биткоинов, которые, как он сам утверждает, были украдены хакерами. Если он все же является тайным обладателем этого сокровища, то оно бы оценивалось в данный момент в сумму более $3 млрд, что сопоставимо с капиталом самого Накамото. Правда, в случае изобретателя технологии блокчейн легитимность приобретения им биткоинов не вызывает сомнений, поскольку они были получены абсолютно открыто при помощи майнинговых процессов.

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

Время от времени в различных мировых СМИ публикуются рекламные сообщения о том, что тот или иной актив можно приобрести за биткоины или другую криптовалюту. Как правило, речь идет о предметах роскоши — дорогих виллах, яхтах, роскошных автомобилях или частных самолетах. Однако в последнее время все чаще появляется информация о том, что за цифровые деньги можно приобрести и самые обычные вещи из повседневного обихода. Но подобных точек продаж пока, увы, лишь единицы, и все они представлены интернет-магазинами с относительно небогатым товарным ассортиментом. Ведь для того чтобы этот вид оплаты стал массовым, необходимы разветвленные инфраструктуры платежных систем, которые будут обеспечивать денежные потоки с необходимыми конвертациями из одной денежной формы в другую. И такие системы уже начинают активно развивать свою деятельность в различных регионах мира, несмотря на то, что из всех стран пока только Япония признала криптовалюты официальным платежным средством.

Помимо платежных систем, существует еще один элемент, жизненно необходимый для успешного внедрения криптовалют в массовое обращение, — банкомат, выдающий наличные фиатные деньги за биткоины или иные популярные криптомонеты. Проекты по созданию и установке подобных денежных аппаратов уже существуют и активно наращивают объемы своего бизнеса по всему миру. Например, уже к началу 2019 года количество одних только биткоин-банкоматов превысило 4000, а ежедневно в мире устанавливается как минимум семь новых аппаратов. Причем не менее чем в трети из всех существующих банкоматов можно не только получить наличные деньги за биткоины, но и совершить обратную операцию по приобретению криптовалюты. Больше половины всех биткоин-банкоматов мира установлено на территории США, но и другие страны постепенно наращивают их количество, особенно отмечается позитивная динамика в Канаде и Австрии. Всего насчитывается более трех десятков производителей подобных банкоматов, а стоимость одного аппарата составляет около $10 000.

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

Рассуждая о биткоине как о платежном средстве, объективности ради следует обратить внимание и на негативные стороны тех возможностей, которые дает криптовалюта, построенная на базе блокчейн-технологии. Речь идет об одном из самых важных ее свойств — анонимности. Именно неотслеживаемость криптовалютных платежей и технологическая невозможность связать транзакцию с непосредственным ее автором как физическим лицом привела к появлению целой криминальной индустрии, предлагающей различные незаконные товары и услуги с оплатой исключительно криптовалютами. Возникновение и существование подобного рода деятельности стало одним из главных факторов, препятствующих получению криптовалютами, и в частности биткоином, статуса официального платежного средства в большинстве государств. Но обратимся к непосредственной истории вопроса.

В 2011 году в сети интернет появился сайт под названием SilkRoad («Шелковый путь»). На этом торговом портале можно было приобрести широкий спектр нелегальных товаров и услуг — наркотики, украденные банковские карты, фальшивые деньги и даже услуги киллера. В качестве обеспечения анонимности продавцов и покупателей сайт использовал прием платежей исключительно в биткоинах. Владельцем сайта был некто Росс Ульбрихт, житель США, исповедующий экстремальные политические взгляды, отрицающие любую форму государственного вмешательства в жизнь людей. Годовой объем продаж сайта в 2012–2013 годах оценивался примерно в $12–15 млн, а суммарный объем сделок в криптовалютном эквиваленте приближался к 10 млн биткоинов. Всего услугами сайта успели воспользоваться около 100 000 покупателей и продавцов. В конечном итоге Ульбрихт был арестован и в 2015 году приговорен к пожизненному заключению, а сайт SilkRoad был закрыт. Тем не менее сам факт появления и существования подобного сервиса остался темным пятном на репутации биткоина как средства совершения анонимных платежей в интернете. Впоследствии официальные лица ряда государств и регуляторов приводили эту историю в качестве примера и объяснения, почему признание криптовалют официальным средством платежа является преждевременным, а то и вовсе недопустимым.

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

Завершая раздел, посвященный Биткоину, хотелось бы еще раз отметить, что этот проект стал пионером-первопроходцем в новейшей высокотехнологичной отрасли, которую представляет собой блокчейн. С момента его появления прошло почти десять лет, и вполне логично, что многие в криптовалютной индустрии считают Биткоин несколько устаревшим и не отвечающим современным требованиям проектом. Но благодаря именно таким критикам у Биткоина начали появляться конкуренты. К началу 2019 года в блокчейн-индустрии насчитывалось уже более 2000 различных криптовалют, имеющих хотя бы одну биржевую оценку. Конечно, в рамках данной книги мы не сможем рассмотреть большую часть этих проектов. Однако мы остановимся на самых значимых из числа так называемых «альткоинов», или альтернативных Биткоину криптовалютах. Каждый из этих проектов пытался создать какие-то уникальные ценностные предложения, выгодно отличающие его от своего «прародителя». И первым следует рассмотреть проект Ethereum, который иногда называют Биткоин 2.0 в силу того, что он поднял блокчейн-технологию на следующую ступень своего развития.

Введение в Ethereum

Спустя примерно пять лет с момента появления сети Биткоин — первой системы, созданной на базе технологии блокчейн, в молодой криптоиндустрии обращалось уже довольно приличное количество проектов. Большинство из них были в значительной степени «биткоиноподобными» и отличались от своего генезисного прообраза лишь в мелких «косметических» деталях. Однако и сам проект Биткоин, равно как и большинство его последующих клонов, представляли собой те же самые, обычные децентрализованные платежные системы, достаточно примитивные по своим возможностям. Тем не менее, оценив все преимущества технологии блокчейн, зарождающаяся на ее основе индустрия начала формировать запросы на более сложный функционал блокчейн-сетей. Криптосообщество осознало необходимость в получении более прогрессивных технологических средств, позволяющих начать построение децентрализованных проектов на новом качественном уровне.

И такой инструментарий действительно был предложен в конце 2013 года одним из криптоэнтузиастов, известным сообществу на тот момент как редактор журнала Bitcoin Magazine. Им был Виталик Бутерин, 19-летний канадский программист с русскими корнями, представивший описание проекта Ethereum, возможности которого привлекли к себе повышенное внимание. В Ethereum были представлены совершенно новые концепции, далеко выходящие за рамки потенциала привычных блокчейн-проектов. Более того, данный проект совершенно не позиционировался как платежная система, а фактически являлся блокчейн-платформой нового поколения. Самым главным нововведением стала система так называемых «умных контрактов», или, как их принято называть в криптоиндустрии, смарт-контрактов. Структуру и принципы работы смарт-контрактов мы рассмотрим позднее, а сейчас отметим основные свойства, отличающие проект Ethereum от Биткоина и ему подобных систем.

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

Майнинг в сети Ethereum существенно отличается от принципов, на основе которых работает Биткоин, хотя тоже использует для нахождения блоков принцип доказательства работы (Proof-of-Work). Управление сложностью вычислительной задачи, как и в Биткоин, зависит от совокупного хешрейта сети. Однако сама степень сложности значительно снижена, поэтому на создание блока Ethereum требуется гораздо меньше времени. В настоящий момент среднее время создание блока в сети Ethereum составляет около тринадцати секунд — по сравнению с десятью минутами в сети Биткоин. То есть пока в сети Биткоин создается один блок, в Ethereum их будет около пятидесяти. Это привело к тому, что база блоков и транзакций сети Ethereum уже сопоставима по размеру с базой Биткоина, и это несмотря на то, что сеть Ethereum возникла на шесть с половиной лет позже, чем проект, положивший начало блокчейн-индустрии. Для расчетов внутри сети, в том числе для оплаты транзакционных комиссий и формирования вознаграждения за майнинг, используется криптовалюта под названием «эфир» (Ether). В случае, когда сложность поиска валидного хеша при майнинге относительно невысока, блоки в сети создаются довольно быстро. А значит, и величина вознаграждения за майнинг пропорционально невелика и совершенно несопоставима по ценности с премией для создателей блоков в сети Биткоин.

Описывая принципы децентрализованного майнинга в сети Биткоин, мы рассматривали ситуацию коллизии в случае, если разные узлы находят блоки в пределах десятиминутного временного интервала. Образующиеся при этом ответвления в цепочке блоков в конечном итоге должны быть отброшены сетью в пользу более длинной цепочки. Похожий принцип используется и в сети Ethereum. Однако из-за того, что блоки в ней создаются почти в пятьдесят раз быстрее, ситуация с возникновением конкурирующих найденных блоков встречается примерно во столько же раз чаще. Поэтому сеть Ethereum почти всегда находится в состоянии, при котором у нее имеются альтернативные цепочки, угрожающие целостности сети, так что постоянно надо делать выбор в пользу более ценного для системы ответвления. В Ethereum для этого используется протокол GHOST (Greedy Heaviest Observed Sub Tree — «жадное и наиболее весомое из известных ответвлений»). Он отдает предпочтение тем ответвлениям с блоками, на добычу которых было затрачено больше вычислений.

Исходя из того, что конкурирующие блоки довольно часто создаются почти одновременно, возникает вопрос, как вознаграждать майнеров. Если поощрять только одного майнера-победителя, тогда для остальных, также нашедших блок, это станет существенной демотивацией. Поскольку майнеры-конкуренты проводят столь же сложную вычислительную работу, создатели системы решили, что будут выделять часть вознаграждения еще максимум двум параллельно найденным, но не принятым сетью блокам. Такие блоки назвали uncles (от английского uncle — «дядя»), поскольку они являются родственными в силу общего «блока-предка». Майнеры, их создавшие, также получают определенную премию, хотя и меньшую, чем те, которые создают блок, принятый сетью как истинный, — для этого существует специальная формула распределения вознаграждения.

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

Как известно, крупные майнеры получают серьезные вычислительные мощности, конструируя фермы, составленные из устройств ASIC. Наличие ферм считается негативным фактором для любой блокчейн-сети, поскольку они усиливают степень централизации майнинга. А это, в свою очередь, противоречит первоначально задуманному плану — максимально устранить любые возможные точки избыточной консолидации вычислительной мощности при управлении сетью. В одном из своих многочисленных интервью Виталик Бутерин рассказал историю о том, что он, будучи в весьма юном возрасте, проводил много времени за популярной компьютерной игрой World of Warcraft. Время от времени его виртуальный персонаж терял свои способности из-за коррекции игрового баланса, который периодически проводили разработчики компании Blizzard, не считаясь с мнением игрового сообщества. После каждого подобного изменения в правилах игры молодой человек испытывал сильное эмоциональное потрясение из-за того, что его личные усилия для развития своего персонажа практически сводились к нулю. Это происходило из-за неких централизованных решений, на которые лично он не мог никоим образом повлиять. По всей видимости, психологические травмы юности оказали значительное влияние на мировоззренческие позиции Бутерина, который пришел к выводу, что централизация управления есть абсолютное зло.

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

Этот подход позволил также сохранить возможность майнинга монет эфира обычными графическими процессорами видеокарт, что серьезно повышает степень децентрализации процесса нахождения новых блоков Ethereum. В целом же вся сеть Ethereum потребляет чуть ли не втрое меньше электроэнергии, чем сеть Биткоин, хотя и эта величина продолжает оставаться весьма значительной. Поэтому разработчики проекта Ethereum по-прежнему серьезно озабочены проблемой энергоемкости своего проекта и планируют в ближайшее время коренным образом пересмотреть принципы создания блоков в сети. В настоящее время сеть Ethereum находится в процессе постепенного отказа от майнинга на основе протокола консенсуса Proof-of-Work в пользу принципа «доказательства владения» (Proof-of-Stake), которому будет посвящен отдельный рассказ.

Что же касается основной расчетной криптовалюты сети Ethereum — эфира, то в отличие от биткоинов, которые подлежат разделению на 100 млн частей, или могут принимать минимальное значение в восьмом знаке после запятой, эфир разделяется на квинтиллион частей, или на целых 18 десятичных знаков. Мельчайшая частица эфира называется Wei в честь Вэй Дая, создателя проекта B-money, одна миллионная часть эфира названа Szabo в честь Ника Сабо, изобретателя смарт-контрактов и автора проекта Bit Gold, считающегося наиболее близким к самому проекту Биткоин. И, наконец, одна тысячная часть эфира получила название Finney в честь Хэла Финни, одного из разработчиков криптографического PGP-протокола и контрагента Сатоши Накамото по самой первой сделке в сети Биткоин в январе 2009 года.

Еще одним важным отличием от биткоинов является то, что эмиссия эфиров на текущий момент никак специально не ограничена и, таким образом, может быть подвержена инфляции в будущем. Когда Виталик Бутерин представлял свой проект, он одномоментно создал и продал инвесторам около 60 млн монет эфира, выручив за них биткоины на сумму примерно $18,5 млн. Еще около 12 млн монет эфира Бутерин поместил в резервы для будущего финансирования развития проекта. Подобный единовременный выпуск монет обычно называют премайнингом.

Сама платформа была запущена 30 июля 2015 года. С тех пор за прошедшие без малого четыре года при помощи уже обычных процедур майнинга было проведено эмиссий на чуть более чем 30 млн монет. Таким образом, их общее количество превысило 100 млн с совокупной текущей капитализацией чуть менее $20 млрд. По своей популярности эфиры прочно удерживают второе место в криптовалютной индустрии после биткоинов и обращаются почти на всех биржах, предлагающих услуги по торговле криптовалютами. Если биткоин обычно называют «криптовалютным золотом», то эфиру достался титул «серебро».

Каждый день в мире совершается свыше полумиллиона транзакций в сети Ethereum. Если обратиться к принципу учета балансов монет на адресах системы, то здесь возникает еще одно важное отличие от сети Биткоин. Как известно, транзакции в блокчейн представляют собой цепочки электронных подписей, которые можно проследить по всей базе блоков. Таким образом, всегда есть возможность автоматически рассчитать баланс любого из адресов, сопоставив его входы как доход и выходы как трату. Непотраченные выходы и будут являться актуальным балансом адреса. Этот принцип называется UTXO, или «учет непотраченных транзакционных выходов», и мы уже уделяли некоторое время его рассмотрению. В сети Ethereum решили, что будет целесообразно вести базу актуальных состояний для каждого из адресов сети. Этот способ учета хотя и требует дополнительного хранения определенного объема данных, но все же несравнимо удобнее принципа UTXO, при котором нужно постоянно получать актуальные состояния адресов через расчеты.

Одновременно с этим принцип хранения актуальных состояний позволил разработчикам ввести в платформу Ethereum уникальный на момент ее появления функционал смарт-контрактов, который, собственно, и стал главным ценностным предложением проекта. Что же такое смарт-контракты и каким образом их реализация в сети Ethereum повлияла на развитие технологии блокчейн в целом?

Смарт-контракты

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

Скрипт-язык Биткоина содержит около восьми десятков различных команд, каждая из которых выполняет определенную алгоритмическую операцию. От элементарной, вроде сравнения двух числовых значений, до более сложных — хеширования данных или алгоритма проверки цифровой электронной подписи. В подавляющем большинстве случаев в параметрах выхода каждой транзакции помещается стандартный скрипт под названием P2PKH, или Pay to Public Key Hash. Этот скрипт реализует процедуру оплаты на хеш публичного ключа, которым, собственно, и является биткоин-адрес получателя транзакции.

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

В 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 и основал ее прямого конкурента — проект Stellar, который также входит в первую десятку криптовалют по капитализации. В чем же был основной смысл создания этих проектов?

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

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

Что касается технологических аспектов, то у Ripple имеется одно важное отличие от традиционных блокчейн-сетей, а именно — отсутствие майнинга. Весь объем эмиссии криптовалюты Ripple был сгенерирован сразу при старте проекта, а общее количество монет составило целых 100 млрд единиц. Кстати, именно столь высокий объем эмиссии позволил этой криптовалюте попасть в топ-лист по капитализации. При этом 60 млрд монет хранятся в специальном резерве и полностью изъяты из оборота. Криптовалюта проекта используется для прямых межбанковских транзакций, которые отображаются в общем распределенном реестре. Комиссия в сети присутствует как защита от транзакционного спама, но поскольку майнинга в сети нет, она просто сжигается, уменьшая таким образом совокупную циркуляцию монет. Общая пропускная способность сети Ripple составляет около 1500 транзакций в секунду, что является весьма серьезным показателем для подобной децентрализованной сети.

Возвращаясь к обзору популярных альткоинов, нельзя не упомянуть об одном из конкурентов платформы смарт-контрактов Ethereum — проекте EOS. Он был запущен в январе 2018 года компанией block.one и также позволяет создавать смарт-контракты в распределенной блокчейн-сети. При этом для их написания используется популярный язык программирования C++. В отличие от Ethereum, где для создания смарт-контрактов существует специально разработанный для этого язык Solidity, в платформе EOS разработчикам можно применить привычные инструменты для написания программного кода. Сеть использует в качестве протокола консенсуса «делегированное доказательство доли» (DPoS), благодаря чему транзакции в ней подтверждаются всего за четверть секунды. Узлы, создающие блоки, избираются непрерывной процедурой голосования из числа владельцев наибольших балансов локальной криптовалюты EOS. При этом узел-делегат, не создавший за сутки ни одного блока, автоматически освобождается в дальнейшем от этой почетной обязанности.

Интересной особенностью формата транзакции в сети EOS является хранение в ней хеша предыдущего блока. Это дает возможность избежать дублирования транзакций в ответвлениях (форках) и однозначно идентифицирует, в каком из ответвлений в данный момент находится конкретный пользователь сети. Комиссия за транзакции в сети EOS отсутствует, а криптовалюта служит для использования в смарт-контрактах и поддержки обращения токенов, созданных в системе. Всего в обороте находится около 900 млн монет EOS. Текущая капитализация эмиссии составляет чуть менее $5 млрд, что позволяет проекту находиться в первой пятерке по данному параметру. Как и в проекте Ripple, майнинг в сети EOS отсутствует, а монеты можно получить только через их приобретение у разработчиков напрямую либо посредством криптовалютных бирж. При первичном размещении криптомонет EOS совокупно за все раунды ICO разработчикам удалось собрать около $185 млн на дальнейшее развитие платформы.

И наконец, последний проект из числа наиболее популярных альткоинов, который хотелось бы рассмотреть, называется IOTA. Изначально он был задуман для передачи данных и платежей без комиссии между устройствами в так называемом «интернете вещей». Концепт «интернет вещей» (Internet of Things) был разработан для сетевого взаимодействия между собой различных устройств, таких, например, как бытовые приборы. Технологи-визионеры предрекают, что недалек тот день, когда человек сможет делегировать права на финансовые операции обычным домашним устройствам, которые смогут автоматически закупать необходимые ресурсы для своего бесперебойного функционирования. И сеть IOTA как раз может стать удобной средой для совершения подобных транзакций.

Примечательно, что проект IOTA не использует блокчейн-структуру в ее классическом понимании. То есть в сети отсутствуют блоки как таковые, а есть лишь набор транзакций, которые связаны между собой, образуя так называемые направленные ациклические графы. В этом виде графов отсутствуют циклы, а их ребра всегда однонаправлены. Базируясь на этом принципе, в сети IOTA каждая новая транзакция подтверждает две старые, а из подобных подтверждений формируется целая «паутина» верификаций, защищая сеть от проблемы двойной траты. Криптовалюта сети называется «йота», а ее эмиссия конечна и составляет астрономическую величину в 2 779 530 283 277 761 монет. В силу отсутствия блоков майнинг в сети также не предусмотрен, а все транзакции освобождены от комиссий. Для удобства использования монет йота их считают в миллионах, или в MIOTA. Капитализация проекта на текущий момент составляет около $900 млн.

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

Форки

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

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

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

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

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

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

Во избежание путаницы, используя в дальнейшем понятие «форк», мы будем иметь в виду именно «хардфорк». Попробуем теперь ответить на вопрос: негативным или позитивным событием является возникновение форков для базовых проектов? Как часто бывает, ситуацию здесь можно рассмотреть с двух сторон. Безусловно, появление конкурирующего проекта, очень схожего по функционалу с базовым, приводит к размытию аудитории пользователей между двумя сетями. В базовом проекте, хотя, как правило, и не сильно, но падает спрос на локальную криптовалюту, а на биржах происходит снижение объемов торговли по ней. Но есть в этом процессе и один положительный момент для держателей, которые владели значительными объемами базовой криптовалюты до разделения проектов. Дело в том, что в момент создания форка база данных блоков копируется в новое ответвление один к одному. И только затем между этими базами появляется рассинхронизация по спискам транзакций, которые начинают создаваться в каждом из ответвлений независимо друг от друга. Что это означает?

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

Логика создания форков основана на преодолении фундаментальных ограничений их базовых прообразов. Уже через несколько лет после запуска сети Биткоин начали очерчиваться его возможные пределы масштабирования. Рассматривались факторы, связанные в первую очередь со скоростью обработки транзакций и размером блока, который был ограничен величиной в один мегабайт. Исторически первым форком Биткоина стала реализация BitcoinXT, возникшая 15 августа 2015 года. Отличием от классического Биткоина в этом форке было увеличение размера блока до восьми мегабайт, после чего планировалось ежегодное удвоение размера блока. Поначалу форк был благосклонно воспринят биткоин-сообществом, а количество узлов BitcoinXT выросло примерно до 4000. Однако уже в 2016 году его популярность пошла на спад, а число узлов снизилось до пары десятков, что означало фактическую «смерть» самого форка.

Незавидная судьба BitcoinXT не остановила попытки создать форк Биткоина, призванный отобрать пальму первенства у проекта-прародителя. 1 августа 2017 года был запущен, наверное, самый «громкий» из форков сети Биткоин — проект Bitcoin Cash. Поддержанный известным активистом блокчейн-сообщества и криптовалютным инвестором Роджером Вером, данный форк начал завоевывать популярность в криптоиндустрии. Его суть во многом напоминала BitcoinXT, поскольку он также предусматривал увеличение размера блока до 8 Мб. Кроме того, в Bitcoin Cash было реализовано еще несколько технологических новшеств, таких как ускоренное изменение сложности сети и введение нового типа транзакций с усиленной криптозащитой. Спустя год после запуска Bitcoin Cash размер блока в его сети был увеличен еще вчетверо — до 32 мегабайт.

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

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

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

Разумеется, форки могут возникать не только у Биткоина. Если посмотреть на альткоины в целом, то, наверное, самый известный форк произошел в сети Ethereum вскоре после того, как эта сеть была запущена для массового использования. Весной 2016 года было проведено успешное ICO проекта по децентрализованному управлению инвестициями The DAO, построенного на базе платформы Ethereum. Название проекта расшифровывается как «Децентрализованная автономная организация». Он стал хорошим примером нового подхода к организационному управлению через его децентрализацию в блокчейн-среде. Проект был всецело поддержан самим автором Ethereum Виталиком Бутериным, и отчасти благодаря этому при размещении токенов The DAO была собрана огромная сумма в 12 млн монет эфира. На тот момент привлеченные инвестиции оценивались в сумму около $165 млн, а по нынешним временам она была бы близка к $3 млрд.

Но уже 17 июня руководители The DAO объявили о хищении примерно 30% всех привлеченных монет эфира на сумму около $50 млн. Это известие спровоцировало панику на рынке, и эфир сильно потерял в цене. Через некоторое время выяснилось, что произошло. В коде смарт-контракта The DAO обнаружилась уязвимость, связанная с так называемыми «рекурсивными вызовами», когда программная процедура давала возможность циклически запускать саму себя. Это позволило выводить деньги с кошелька The DAO на ее специально созданные дочерние структуры бесконечное количество раз посредством многократного разделения материнской компании. Перед сообществом пользователей сети Ethereum встала серьезная дилемма: проводить ли хардфорк всей сети, отменяя транзакции злоумышленника, или признать такие ситуации как естественно возникающие в децентрализованной открытой среде и постараться в дальнейшем не допускать подобных уязвимостей.

Большинство пользователей системы, включая самого Бутерина, высказались за хардфорк. Однако у этого решения нашлись и противники, которые посчитали любые формы «транзакционных откатов» нечестной практикой. Они утверждали, что данный прецедент оставляет широкие возможности для будущих вмешательств, что является серьезной угрозой независимому существованию самой системы. Поэтому когда хардфорк, вопреки протестам, все-таки произошел и инвесторам The DAO вернули украденные средства, несогласные с этим решением пользователи образовали ответвление, в котором подобные возвраты средств не были проведены. Этот форк получил название Ethereum Classic, что подчеркивает его ортодоксальность в отношении возможного вмешательства в свободную работу сети. Несмотря на отсутствие поддержки со стороны создателя Ethereum и неприятие сообществом в целом, сеть Ethereum Classic сумела выжить. Существует она и сейчас, хотя стоимость монеты форка с тех пор практически не выросла и составляет около 4% от цены монеты основной сети.

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

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

Анонимность в блокчейн

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

С тех пор уже несколько десятков лет все банки и прочие финансовые организации проводят обязательные процедуры идентификации своих клиентов. Понятие же банковской тайны более не является сакральным и имеет скорее негативную коннотацию в глазах национальных финансовых регуляторов. Эти правительственные организации осуществляют строгий надзор над финансовой индустрией своих стран и при наличии подозрений вправе обвинить подконтрольные им кредитные институты в одном из смертных грехов современного делового мира — пособничестве в отмывании денег. Однако вместо фокусной борьбы с реальными преступниками на мировую финансовую отрасль набрасывают «сеть с мелкой ячейкой», куда зачастую попадают небольшие организации и частные лица среднего достатка, чьи финансовые операции могут показаться банкам и их регуляторам не вполне прозрачными, а значит — подозрительными.

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

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

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

Еще в июле 2012 года в криптомире появился проект Bytecoin, обеспечивающий полную анонимность транзакций в блокчейн. Создателями системы стали семеро разработчиков, которые применили в своем проекте протокол CryptoNote, обеспечивающий повышенную секретность. Однако к моменту запуска сети для широкого использования выяснилось, что 80% монет Bytecoin уже выпущены и заранее распределены между самими разработчиками и аффилированными с ними лицами. Это вызвало недоверие к проекту со стороны новых, независимых пользователей системы. Учитывая это обстоятельство, двое разработчиков Bytecoin — Рикардо Спаньи и Франсиско Кабаньяс — решили создать форк данной системы с целью устранить ее недостатки и по возможности улучшить функциональность. Несмотря на то что они использовали значительную часть уже созданного ранее кода Bytecoin, на доведение системы до работоспособного состояния все же потребовалось некоторое время. Новая система была запущена в апреле 2014 года, получив название Monero, что в переводе с языка эсперанто означает «монета».

Проект Monero использует протокол защиты Proof-of-Work, хотя поначалу сеть была запущена без майнинга, который стал доступен только через несколько недель. В сети применяется протокол CryptoNote, который обеспечивает процесс так называемой «обфускации», то есть «запутывание» или «перемешивание» информации, которую содержат транзакции сети. Для реализации данной цели применяется метод кольцевых подписей, благодаря которому сторонний наблюдатель никак не может определить, кто является истинным отправителем или получателем транзакции. Спустя несколько лет, к концу 2017 года, в программный код сети был дополнительно интегрирован алгоритм RingCT, который обеспечивает сокрытие пересылаемых сумм. Обычно в криптосистемах, подобных Биткоину, у пользователя имеется только один секретный и один публичный ключ. В сети Monero для каждого из адресов есть «ключ для трат», аналогичный секретному, а также дополнительный «ключ для просмотра», который он может раскрыть третьим лицам для проверки своих транзакций.

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

Тем не менее криптовалюта Monero сумела завоевать популярность — ее часто применяют для оплаты покупок в онлайн-играх и в интернет-казино. Monero входит в число самых популярных криптовалют с капитализацией чуть более $1 млрд. Эмиссия Monero не имеет конечного предела, однако в системе заложено снижение вознаграждения за майнинг после превышения величины в 18,4 млн выпущенных монет. Блоки в сети Monero создаются каждые две минуты, что позволяет довольно быстро подтверждать транзакции пользователей.

Немногим раньше проекта Monero появилась система DASH — DigitalCash, или «цифровая наличность». Система была придумана и разработана Эваном Даффилдом и запущена 18 января 2014 года. Как и в прочих проектах, восходящих к заимствованному из Биткоина коду, для майнинга здесь используется протокол доказательства работы. Отличие DASH состоит в том, что майнерам достается только 90% от вознаграждения за майнинг, тогда как оставшиеся 10% идут на финансирование одобренных участниками сети проектов, связанных с самой системой. При этом сама процедура майнинга в DASH гораздо менее энергозатратная, чем, например, в сети Биткоин.

Управление сетью DASH полностью децентрализовано. Для обработки транзакций используется инфраструктура мастер-нод («мастер-узлов»). Этим узлом может стать любой желающий из числа участников проекта, готовый внести 1000 монет DASH в виде залога, обеспечивающего его добропорядочное сетевое поведение. Одной из основных функций мастер-нод является обфускация транзакций посредством алгоритма PrivateSend. Речь в данном случае идет о перемешивании платежей, проходящих в несколько раундов, количество которых определяет сам отправитель денежных средств. Каждый раз для перемешивания избирается новая мастер-нода, общее число которых на текущий момент уже превысило 5000. Сумма платежа разбивается на части, каждая из которых анонимизируется, а затем совпадающие по объему части перемешиваются. В качестве мотивации своей деятельности мастер-ноды получают 50% от майнерского вознаграждения за найденные сетью блоки.

Интересно также отметить, что для майнинга в сети DASH используется принцип хеширования, состоящий из целых одиннадцати функций, имеющих различную алгоритмическую природу. Это опять же сделано в целях противодействия ASIC-майнингу, хотя производители оборудования все же сумели эти трудности преодолеть, представив соответствующие устройства на рынке. Всего в сети выпущено чуть более 8 млн монет с общей капитализацией около $1 млрд. Проект достаточно популярен и сопоставим по объемам использования со своим прямым конкурентом — системой Monero.

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

Для создания анонимности в ZCash используется протокол доказательства с нулевым разглашением zk-SNARK, являющийся, по сути, функционально расширенной версией слепой электронной подписи. Сама сеть использует два типа адресов: приватный «z-адрес» и открытый «t-адрес», а транзакции возможны между этими типами адресов в любой из четырех комбинаций. В зависимости от того, является ли адрес отправителя или получателя в транзакции z-адресом, шифруется информация о входах или о выходах либо скрывается вообще вся информация, включая сумму перевода. При использовании «t-адресов» информация остается открытой. Для обеспечения формирования транзакций создается так называемый «кортеж» ключей, состоящий из ключа траты, ключа просмотра и расходного адреса. Причем ключ просмотра и платежный адрес математически вычисляются из ключа траты, который аналогичен по своему смыслу обычному приватному ключу.

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

Протокол консенсуса в сети базируется на доказательстве работы, блок создается за 150 секунд, а эмиссия ZCash, как и в Биткоине, ограничена величиной в 21 млн монет. В качестве поощрения разработчики выделяют до 10% всей эмиссии на дополнительное вознаграждение майнеров в течение первых четырех лет с момента запуска сети для широкого использования. В случае если какая-либо из транзакций не была включена в первые 20 блоков с момента ее помещения в мемпул, она считается просроченной и более не учитывается сетью. Комиссия за транзакции фиксирована и составляет незначительную величину в 0,0001 монеты. Система ZCash замыкает второй десяток рейтинга криптопроектов по капитализации, выпустив около 6 млн монет общей стоимостью порядка $450 млн.

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

Назад: Предисловие
Дальше: ЧАСТЬ III. БЛОКЧЕЙН-ИНДУСТРИЯ