Важные новости

Блокчейн как решение задачи византийских генералов

Криптовалюты

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

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

Обзор

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

Проблема двойных трат

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

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

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

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

В 2008 году изобретатель, избравший себе псевдоним Сатоси Накамото, обнародовал способ решения проблемы двойных трат без участия третьей стороны (Nakamoto, 2008). Его изобретение, Bitcoin, было электронной платежной системой, в которой впервые был обеспечен окончательный трансферт цифрового контента (а не простое его копирование) без необходимости участия третьей удостоверяющей стороны. Работа системы достигается использованием криптографии с открытым ключом, сети одноранговых объектов и защитным алгоритмом POW (подтверждение выполненной работы).

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

  • Биткоин или Биткойн? Как правильно писать ‘Bitcoin’ по-русски

Задача о византийских генералах

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

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

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

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

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

Новые блоки содержат не только новые транзакции, переданные по сети, но и еще одну — начисляющую майнеру-победителю 25 специально эмитированных биткоинов, и это служит для всех стимулом предоставлять системе свои компьютерные мощности. Кроме того, на каждые 210 000 новосозданных блоков (раз в четыре года) размер приза майнерам сокращается вдвое. При запуске системы в 2009 году премия за новый блок составляла 50 биткоинов. Сегодня она равна 25 биткоинам, ив 2016 году сократится до 12,5. Это означает, что общая сумма выпущенных в обращение биткоинов никогда не превысит 21 миллиона. Но с уменьшением премии майнерам — в чем их стимул предоставлять мощности своих компьютеров для проверки транзакций системы? Найдено следующее решение: участники транзакции могут выплачивать комиссионные тому майнеру, который успешно добавит их сделку в цепочку блоков.

Экономическая суть криптовалюты

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

Алгоритмическое управление

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

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

Управление с помощью открытого кода

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

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

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

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

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

В связи с майнинговыми пулами возникают и осложнения. К примеру, самый большой майнинговый пул в Bitcoin зачастую имеет в своем распоряжении до трети или более вычислительных мощностей сети. Если какой-либо пул когда-нибудь будет иметь более 50% вычислительных мощностей всей сети, он сможет обеспечить любые двойные траты в системе. Эта гипотетическая ситуация подорвет доверие к Bitcoin и, скорее всего, вызовет обвал курса этой криптовалюты. Соответственно, мы наблюдаем определенное саморегулирование майниговых пулов, кровно заинтересованных в успехе Bitcoin. Как только вычислительные мощности одного из пулов приближаются к 40% общих ресурсов сети, некоторые из участников покидают его и присоединяются к другому пулу. Пока что эта норма действует без исключений, но многих членов сообщества тревожит концентрация ресурсов в пулах. Недавно майнинговый пул GHash.IO ненадолго сосредоточил в своих руках более 50% вычислительных мощностей Bitcoin. Нет никаких данных, что он использовал свои возможности для осуществления двойных трат биткоинов, но многие наблюдатели были встревожены произошедшим.

Концентрация в майнинговых пулах не только чревата рисками, но и несет в себе определенные преимущества. В случае кризиса полезно иметь возможность собрать вместе основных игроков. Один такой кризис в Bitcoin разразился в ночь на 11 марта 2013 года, когда стало ясно, что изменения в версии 0.8 эталонной программы-клиента непреднамеренно привели к ее несовместимости с версией 0.7. В результате этой несовместимости две программы Bitcoin отказывались принимать друг у друга блоки, и цепочка блоков разделилась на две версии, оспаривавшие владение биткоинами. Через несколько минут после того, как стало понятно, что образовалась «вилка» возможных действий, основные разработчики системы встретились в чате и решили, что сеть должна вернуться к версии 0.7. В течение следующих часов они обсудили вопрос с основными операторами майнинговых пулов и убедили их переключиться обратно на версию 0.7 эталонного клиента, и что обернулось для некоторых майнеров, получивших средства в цепочке, созданной с помощью эталонного клиента новой версии 0.8, немалыми убытками. Примерно через семь часов версия «цепочки 0.7» стала устойчиво «длиннее» второй конкурирующей «цепочки 0,8», и кризис был преодолен.

Еще одна проблема возникла в феврале 2014 года, когда старейшая и крупнейшая обменная площадка сети — Mt. Gox — заявила, что ее биткоиновые активы сильно сократились из-за сторонних атак с использованием свойства «гибкости» электронных денег в системе Bitcoin (в ходе таких атак биткоины не подделываются, но их характеристики можно изменить до внесения записи в цепочку блоков для дальнейшего оспаривания права владения конкретной денежной единицей). Действительно ли убытки Mt. Gox были вызваны хакерскими атаками, остается невыясненным до сих пор, но уже через несколько дней стало очевидно, что «гибкость» транзакций действительно может делать систему уязвимой. Некоторые сайты Bitcoin временно приостановили обмен биткоинов: за этот период основная команда разработчиков решала проблему, модернизируя программное обеспечение и разъясняя сообществу, что «гибкость» транзакций представляет собой конструктивную характеристику Bitcoin, а не ее неисправимый дефект.

Следует отметить, что вопрос об управлении криптовалютами требует дальнейшего исследования.

Средство обмена или расчетная единица?

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

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

Криптовалюты обладают рядом свойств, придающих им особую полезность в качестве средства обмена, а не расчетной единицы. В отличие от наличных денег, операции с ними могут проводиться как «лично», контактами двух комьютеров, так и по сети при наличии доступа к интернету. Кроме того, в отличие от кредитных карт, плата за простые операции с криптовалютой невелика и носит добровольный характер: она используется для стимулирования быстрой обработки транзакций майнерами. В платежных системах с использованием кредитных карт, как правило, взимается комиссия за операцию в 25 центов плюс 3% от суммы транзакции. В сети Bitcoin комиссия за операцию равна лишь нескольким центам. Некоторые предприятия розничной торговли используют коммерческие сервисы для приема платежей, номинированных в биткоинах, держа на своих банковских счетах эквивалентное количество долларов. Провайдеры сервисов обычно взимают за это комиссию в 1% от суммы платежа, но она может уменьшиться по мере сокращения хеджинговых издержек (подробнее см. ниже). Даже при наличии этой комиссии за конвертацию торговцы на транзакциях через сеть Bitcoin экономят 2% от транзакции или даже больше этой суммы. Торговцев также привлекает то, что клиент, отказавшийся от покупки, не может аннулировать большинство транзакций с биткоинами — в отличие от операций с кредитными картами.

Подобным разделением функций средства обмена и расчетной единицы криптовалюты реализуют на практике некоторые идеи, разрабатывавшиеся еще в 1970-х — 1980-х годах такими экономистами, как Фишер Блэк (FischerBlack 1970), Юджин Фейма (EugeneFama 1980), Роберт Холл (RobertHall 1982) и Нил Уоллес (NeilWallace 1983). Эти авторы считают, что свойства денег в конвенциональной экономике сильно зависит от правового и институционального устройства; в условиях laissezfaire, свободного обмена, утверждают они, мы наблюдали бы формирование прямых или косвенных цен на сами средства обмена и размывание различий между деньгами и иными финансовыми активами. Хотя криптовалюта остается нишевым платежным средством, а традиционные денежные институты свое доминирование сохраняют, эксперименты на границах нашей нынешней денежной системы с Bitcoin и другими новыми криптовалютами могут стать плодотворной почвой для новых исследований в рамках этой научной школы.

Использование псевдонимов и цензуроустойчивость

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

Пользователи в состоянии принять некоторые меры для сохранения своего инкогнито и обеспечения определенной степени приватности своих финансовых дел. Так, они могут создать и использовать практически неограниченное число адресов (общее количество возможных адресов Bitcoin — 2 в 160-й степени). При проведении торговых операций наилучшим считается создание нового адреса получателя для каждой транзакции: это позволяет коммерсантам обеспечить конфиденциальность для клиентов и защититься от шпионажа со стороны конкурентов. Кроме того, при обработке операций несколько транзакций все чаще объединяются в одну, чтобы никто не знал, с какого адреса и на какой на деле тосуществляются платежи. Если Алиса хочет заплатить Бобу, а Чарли — Дэвиду, производится одна транзакция, в ходе которой Алиса и Чарли вносят деньги, а Боб и Дэвид их снимают: так труднее понять, кто кому платит.

Несмотря на наличие таких методов защиты, сеть Bitcoin остается открытой для высокотехнологичного анализа сделок и выявления в них конкретных сторон. Майклджон и его соавторы (Meiklejohnetal. 2013), исследовав известные громкие случаи краж биткоинов, смогли проследить путь денежных знаков в системе вплоть до централизованных институтов (например, биржевых площадок), которым суд в теории мог бы предписать раскрыть личности преступников. Исследователи использовали лишь общедоступные открытые данные; правоохранительные органы с их более существенными возможностями способны еще больше снизить анонимность сделок в сети Bitcoin.

Хотя транзакции в Bitcoin не являются абсолютно анонимными, само наличие криптовалюты существенно меняет характер правоохранительной деятельности по пресечению незаконных транзакций. В ходе операций с традиционными деньгами электронные платежи осуществляются через финансовых посредников — а, значит, государство может ограничивать операции регулированием работы последних. Так, наркоторговцы, как правило, не могут получать платежи через систему Visa – она просто не обеспечит транзакции в пользу коммерсанта, занимающегося продажей наркотиков. В рамках Bitcoin наказание за транзакции может последовать постфактум — но их нельзя ограничить заранее за счет регулирования действий посредника. Это может серьезно повлиять на законотворчество и правоприменение в той части правовой сферы, работа которой обеспечивается экономическими методами.

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

Курсы и их волатильность

В феврале 2011 года на первых торгах курс биткоина равнялся 1 доллару, в июне того же года — возрос до 30 долларов, в июне снизился до 7, в октябре не дотягивал и до 2,5, к августу 2012 года вновь повысился до 10 долларов, в апреле 2013 года достиг уровня 230 долларов, затем буквально за неделю «просел» до менее чем 70, в ноябре 2013 вырос до 1100 с лишним долларов, после чего снова обвалился на несколько сотен долларов (см. схему 1). В связи с волатильностью возникает вопрос о ценообразовании денежных единиц в криптовалютных системах. В чем ценность биткоинов? Почему эти деньги столь нестабильны? Что может усилить или ослабить эту нестабильность в будущем?

Курс биткоина. Источник: Bitcoin Price Index data from CoinDesk.

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

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

В случае с криптовалютами вопрос неопределенности обменных курсов выглядит и более, и менее радикальным одновременно. Он менее радикален, поскольку между криптовалютами существует куда больше различий, чем между бумажными деньгами. Бумажные валюты имеют идентичные базовые свойства. Что же касается криптовалют, то они порой различаются именно базовыми характеристикам. К примеру, такие различия порождает алгоритм, используемый как основа майнинга: он определяет уровень профессионализации майнинговых пулов. В Litecoin, например, применяется алгоритм, способствующий меньшей концентрации майнинга. Еще одно различие — удобство языка криптовалюты. Так, новая валюта Ethereum обладает более эффективным языком для будущего развития системы, чем Bitcoin. Zerocash, как уже говорилось, обеспечивает куда большую анонимность по сравнению с Bitcoin. Поскольку криптовалюты отличаются друг от друга сильнее, чем фиатные деньги, именно эти отличия способны определять обменные курсы в рамках модели, схожих с моделями Карекена и Уоллеса для обычных денег.

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

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

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

Заключение

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

Библиография

Black, F. 1970. Banking and interest rates in a world without money: the effects of uncontrolled banking. Journal of Bank Research, 1 (Autumn): 9–20.

Fama, E. F. 1980. Banking in the theory of finance. Journal of Monetary Economics, 6: 39–57.

Hall, R. E. 1982. Monetary trends in the United States and the United Kingdom: a review from the perspective of new developments in monetary economics. Journal of Economic Literature, 20: 1552–6.

Kareken, J. and Wallace, N. 1981. On the indeterminacy of equilibrium exchange rates. Quarterly Journal of Economics, 96(2): 207–22. doi: 10.2307/1882388

Meiklejohn, S., Pomarole, M., Jordan, G., Levchenko, K., McCoy, D., Voelker, G. M. and Savage, S. 2013. A fistful of Bitcoins: characterizing payments among men with no names. Proceedings of the 2013 Conference on Internet Measurement.

Nakamoto, S. 2008. Bitcoin: A Peer-to-Peer Electronic Cash System. bitcoin.org.

Wallace, N. 1983. A legal restrictions theory of the demand for ‘money’ and the role of monetary policy. Federal Reserve Bank of Minneapolis Quarterly Review, 7: 1–7.

Источник: Сryptocurrency / Mercatus Center, George Mason University. 1 июля 2014 года.

По теме:

  • Bitcoin Review — всё о первой пиринговой электронной денежной системе

Блокчейн как решение задачи византийских генералов

Войти

Популярные тэги

No_name_c3po
История Free TON — с чего все началось и как выглядит проект сейчас
Yu_ya3110
История Free TON — с чего все началось и как выглядит проект сейчас
Markvkpvkk
Биржи, на которых можно торговать TON Crystals: PRIZMBIT
ONEABS
Биржи, на которых можно торговать TON Crystals: PRIZMBIT
No_name_c3po
Почему одни криптовалюты стоят более 45 000$, а другие не преодолевают 1$
Почему одни криптовалюты стоят более 45 000$, а другие не преодолевают 1$
No_name_c3po
Почему одни криптовалюты стоят более 45 000$, а другие не преодолевают 1$
Yu_ya3110
Почему одни криптовалюты стоят более 45 000$, а другие не преодолевают 1$
konst360
Новый платежный бот для работы с Ton Crystal в Telegram
vase-Petrov
African Subgovernance Proposal

Византийский консенсус на пальцах и немного о децентрализации

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

Автор публикации

viljy

Viljy

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

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

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

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

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

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

Вот как описывается простейший случай на примере 4 генералов, среди которых есть 1 предатель (пример из интернета, но по мере возможности облегченный для понимания).

После первого обмена информацией, когда каждый генерал посылает сведения другим генералам, каждый генерал будет располагать такими сведениями:

3) 1.2.3.4. — предатель (эта пометка для читателя, генералы не знают)

Здесь каждый генерал сообщил остальным свой настоящий номер. Третий генерал сообщил остальным не свой номер, а произвольную информацию, причем всем разную (обозначена буквами a, b, c). Далее каждый генерал посылает всем остальным сформированные ранее сведения, полученные после первого обмена информацией. В итоге каждый генерал будет располагать таким набором информации:

3) (1.2.a.4) (1.2.b.4) (1.2.3.4) (1.2.c.4) – предатель (какая же он скотина)

Предатель под номером 3 снова разослал разную ахинею всем остальным. Далее каждый генерал ищет совпадающие значения в наборах полученной информации и формирует результат, который у верных генералов будет (1.2.f(a,b,c).4). f(a,b,c) – значение, встречающееся хотя бы два раза среди a,b,c или неизвестность, если они различны. Так как значения a,b,c и функция f у верных генералов те же самые, то консенсус достигается, несмотря на усилия предателя.

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

У византийского консенсуса есть важная особенность — консенсус может быть достигнут если число предателей строго меньше 1/3. Или другими словами если в системе m предателей, то консенсус возможен, если есть минимум 2m+1 верных генералов. То есть больше 2/3. Если предателей ровно 1/3, то консенсус не может быть достигнут. Для этого тоже есть доказательство, но лучше рассмотреть этот момент на низведенном до бытового уровня примере, так сказать объяснить на пальцах, когда имеется 3 генерала, среди которых 1 предатель.

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

Система, построенная да византийском консенсусе называется в общем случае Byzantine Fault Tolerance (BFT), что можно интерпретировать как отказоустойчивый византийский протокол (протокол это метод достижения консенсуса). Существуют разные усовершенствованные варианты реализаций протокола BFT, например такие как Practical Byzantine Fault Tolerance (PBFT), Federated Byzantine Agreement (FBA), Delegated Byzantine Fault Tolerance (DBFT). Последний нашел применение в Free TON, но со своими особенностями. Однако как именно, на основании чего валидаторы могут приходить к консенсусу? В основе этого лежит механизм Proof-of-Stake (PoS) — доказательство владения долей (монет). Этот механизм является энергоэффективным и экономичным в отличие от Proof-of-Work (POW), к которому еще вернемся впоследствии.

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

Имеется не то чтобы недостаток, а особенность — чем больше валидаторов, тем медленнее сеть работает. Поскольку на взаимодействие для достижения консенсуса тратится больше ресурсов. По-простому: 10 людям быстрее и легче договориться, чем сотне. При том, что нет «председателя», который всех созовет на собрание (все валидаторы равноправны). Впрочем, сеть FreeTON допускает до 1000 валидаторов без существенной потери скорости транзакций. Хотя вряд ли такое количество валидаторов понадобится в ближайшее время. Однако иметь запас по масштабированию необходимо.

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

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

Теперь, как и было сказано выше, вернемся к POW. И речь пойдет о способах достижения максимальной децентрализации сети. Что предпринимается в отношении этого в блокчейнах, построенных на протоколах доказательства работы? Это: борьба с асиками, борьба с фермами (видеокарт), борьба с пулами. Достигается это усложнениями алгоритма (вот теперь настала очередь сказать что это такое, если по-простому, алгоритм — это способ вычислений, используемый для работы протокола и нахождения консенсуса в сети). Существует очень много разных алгоритмов, начиная от SHA256, scrypt, groestl, x11, x13, x15 ,x17, x22i (это все целые пачки отдельных алгоритмов, объединенные в один «комбо»), заканчивая random x, или совсем уж экзотическими biblehash или burgerhash. Куча их, и перечислять прямо все нет смысла.

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

А как обстоят дела с децентрализацией у Free TON и похожих систем? Вышеуказанные проблемы здесь просто не существуют. Хотя опять таки можно сказать, что даже тысяча валидаторов это не совсем децентрализация. Но на это есть что возразить. А именно, практика многих лет показала, что в других системах, несмотря на казалось бы заложенную при создании возможность масштабной децентрализации, по факту получилась практически централизованная система с несколькими крупнейшими пулами майнеров. Это например, относится и к биткоину, и к эфиру. Можно сказать, что и в чисто POS блокчейнах ситуация похожа. Или рано или поздно приведет к этому. Так как пока ни одна такая система не смогла полностью преодолеть проблему «богатые становятся богаче». Проблема сама по себе не в том, что они становятся богаче (это не вопрос социальной справедливости). Дело в том, что это подтачивает децентрализацию, а значит и надежность, и как следствие безопасность системы.

Слабость приведенного аргумента в том, что он в стиле «А у вас в Америке негров линчуют!». Так как какими бы ни были недостатки других блокчейнов, это не снижает недостатки какого-то одного. Как же тогда показать, что Free TON децентрализованный, но не потому, что другие централизованы. Начнем с количества валидаторов и их отбора.

К примеру найдем оборотную сторону какого-нибудь достоинства Polkadot. Первое, что казалось бы и не недостаток вовсе, а песнь социальной справедливости — любой бомж (утрированно) может стать валидатором, практически не имея стейка. При этом быть анонимным. Казалось бы хорошо, а возможен ли случай, когда куча таких злонамеренных валидаторов, действующих по сговору (потому что это один или небольшая группа людей) привлекла каким-то образом горы стейков (ну например сверхнизкой комиссией) и в один из раундов как-то вот так была выбрана в валидаторы на эпоху, составив при этом 1/3 или более от выбранных. Что происходит с византийским консенсусом при этом уже было описано ранее. Так что это не идеальный путь. Отобранные валидаторы Free TON как-то более надежно выглядят. Кстати, в том же Polkadot в сообществе рекомендуют номинировать известных валидаторов, а не анонимных ноунеймов. Кроме того, есть психологический элемент, влияющий на безопасность сети — если валидатор должен обладать минимально необходимым размером стейка, он вкладывает капитал, а значит непосредственно заинтересован в стабильности и безопасности системы.

Теперь «богатые становятся богаче». Механизм распределения наград Free TON таков, что доход получается не только за выполненную работу (валидация блоков, подтверждение транзакций), но и ровно пропорционально стейку (чего нет в Polkadot – там производится только оплата за работу независимо от размера стейка). Однако это никак не скажется на децентрализации. Валидаторов от этого меньше не станет. (В отличие от чистого POS, где с маленьким весом монет можно никогда ничего не получить, так лучше выключить кошелек, а монеты продать киту.) Таким образом «богатение» богатых» не угрожает децентрализации. Каждый валидатор и номинатор получит свою долю. Кстати, это в некотором роде стимулирует потихоньку увеличивать свой стейк по мере возможности (а в POS нет, там или все, или лучше и не начинать).

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

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

Но и на это есть что возразить. И контраргумент таков: отправка монет обратно не такая и обременительная для быстрой сети. А вероятность наступления подобного события (компрометация смарт-контракта) примерно такая же как то, что Polkadot захватят бомжи-валидаторы.

Впрочем, о вероятности и случайности речь пойдет в следующий раз.

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

https://www.20khvylyn.com/delo/money/cryptocurrency.html

Византийский консенсус на пальцах и немного о децентрализации

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *