В последние годы много писали об «огромном расходе энергии», связанном с алгоритмом доказательства выполнения работы (Proof of Work, PoW) Биткойна. Мы попытаемся подвергнуть сомнению это распространённое мнение, поставив под вопрос главные показатели, используемые для демонстрации предполагаемого роста неэффективности PoW Биткойна.
Пролог: грядёт криптоапокалипсис
Не так давно во всех СМИ появились новости о грядущем криптоапокалипсисе. PoW уничтожит мир в 2020 г…
Если вчитаться, то можно заметить, что большинство этих статей основаны на результатах анализа, предоставленных Алексом де Ври, «финансовым аналитиком и специалистом по блокчейну», сотрудником PWC Netherlands и автором сайта Digiconomist.
Должен признаться, это исследование вызывает у меня смешанные чувства. Мои претензии к работе де Ври касаются не оценки потребления электричества (эта часть уже получила свою справедливую долю критики), но постоянного использования конкретного показателя: потребления электричества на транзакцию. Не поймите меня неправильно. Если говорить о коммуникации, то этот показатель гениален, особенно для тех, кто нуждается в аргументах против PoW Биткойна. Цифра кажется настолько безобразно диспропорциональной, что потребность в дальнейшей дискуссии отпадает. Проблема в том, что этот показатель фундаментально неверен. По нескольким причинам.
Во-первых, число транзакций путают с числом платежей. Но будем честны, это фактические цифры радикально не меняет. Так что давайте об этом забудем.
Вторая проблема в том, что цифры часто публикуют, не уточняя, что корреляции между потреблением электричества и числом транзакций не существует. Другими словами, почти никогда не признаётся, что потребление электричества по отношению к числу транзакций представляет собой фиксированные издержки (а не переменные). Благодаря техническим решениям, таким как платёжные каналы или сеть Lightning, очевидно, что мы можем радикально сократить значение этого показателя настолько, насколько захотим. Это свидетельствует о двух вещах: показателем легко можно злоупотреблять, и он ничего не говорит нам о будущей эффективности PoW Биткойна.
Последняя проблема этого показателя в том, что он способствует ошибочному пониманию пользы PoW Биткойна. Неудивительно, что он обрёл особую популярность в период безумия «блокчейн, не Биткойн», но нам следует сделать всё возможное, чтобы способствовать рациональному мышлению, а не бесконечным спорам, основанным на эмоциональных реакциях.
Итак, дойдя до этого момента, мы сталкиваемся с очевидным вопросом…
В чём польза PoW Биткойна?
Теория «золотодобычи»
Первая теория заключается в том, что главная польза алгоритма PoW в выпуске новых монет. Пол Шторц написал хорошую статью на эту тему. Эта теория соблазняет тем, что она, на первый взгляд, согласуется с распространённой метафорой золотодобычи, используемой для объяснения механизма.
Данная теория мне симпатична, и я считаю, что она отражает важный аспект протокола, но в этой статье я не буду рассматривать выпуск новых монет как главную функцию алгоритма PoW. В поддержку этого выбора я приведу следующее наблюдение: хотя ожидается, что эмиссия новых монет прекратится примерно в 2140 г., остановка Биткойна в ту же дату не планируется. А значит, PoW играет в Биткойне другую важную роль.
Теория «четвёртого раздела»
Вторая теория заключается в том, что ответ на наш вопрос был дан 10 лет назад создателем Биткойна. А именно, в четвёртом разделе whitepaper.
Я резюмирую эту теорию следующим предложением:
Главная польза PoW Биткойна в том, что он обеспечивает экономическую историю.
Всё это хорошо, но в текущей форме это утверждение не слишком полезно. Намного лучше будет иметь математическую модель. В связи с этим возникает новый вопрос: как выразить «обеспечение экономической истории» в виде математического уравнения?
Цифровая сила тяжести
Исходя из предыдущего определения, можно утверждать, что наша модель должна быть способна выразить:
Поскольку в протоколе Биткойна нет такого понятия, как «монета», мы будем использовать концепцию неизрасходованного выхода транзакции (Unspent Transaction Output, UTXO) как элементарного объекта стоимости. Тогда легко можно определить общую экономическую стоимость, обеспечиваемую системой, сложив экономическую стоимость всех UTXO, существующих на данный момент (множество UTXO). Хорошо. Мы уже знаем, как выразить в нашей модели экономическую стоимость.
Теперь нужно выразить безопасность. Очевидно, важную роль здесь должно играть PoW. Поэтому уместно будет вспомнить два его свойства:
Доказательство выполнения работы глобально и кумулятивно
В некотором смысле PoW напоминает силу тяжести (точнее гомогенное гравитационное поле), одновременно воздействующую на все тела в её поле, оказывая кумулятивное влияние на их индивидуальные скорости.
В случае Биткойна:
Эти два свойства фундаментальны для изучения экономики PoW Биткойна. К сожалению, в показателях, используемых де Ври, они полностью упущены.
Несколько допущений
Прежде чем продолжить, сделаем несколько допущений:
Хотя в реальном мире эти допущения, скорее всего, окажутся в той или иной степени неверными, они кажутся удовлетворительными для этого предварительного исследования.
Теперь попытаемся превратить идею «обеспечения экономической истории» в математическую модель.
Число «накопленных биткойн-хешей» UTXO
Первая наша попытка будет прямолинейной. По сути, мы умножим стоимость UTXO на число «накопленных» им хешей с его создания до данного блока.
Несмотря на простоту, данное определение отражает то интуитивное понимание, что система более полезна, когда UTXO «накопил» больше хешей и/или когда его стоимость выше.
Тем не менее эта система не совсем удовлетворительна, потому что число накопленных хешей – не очень хорошее приближение для оценки безопасности UTXO. Основная причина в том, что количество вычислительной мощности, посвящённой майнингу Биткойна, с годами существенно увеличилось. Так, на вычисление PoW, обеспечивавшего старый блок, в 2009 г. могло требоваться 10 минут, но современные ASIC могут вычислить его намного быстрее.
Кажется очевидным, что нужна лучшая модель, принимающая во внимание этот факт.
Число «накопленных биткойн-дней» UTXO
Для начала добавим ещё одно допущение:
Опять же, нельзя утверждать, что данное допущение всегда верно или всегда будет верно. Тем не менее в прошлом оно почти всегда было верно, так что будем использовать данную гипотезу.
Теперь можно определить безопасность UTXO при блоке B как число дней, которое потребуется для перезаписи истории с момента создания UTXO при использовании для майнинга блока B 100% вычислительной мощности.
Получаем следующее уравнение для отдельного UTXO:
и уравнение для множества UTXO:
Возможно, вас удивляет выбор «использования для майнинга блока B 100% вычислительной мощности». Всё просто. При наших текущих допущениях такое определение можно рассматривать как своего рода худший сценарий. («Как долго будет оставаться в безопасности данный UTXO, если для изменения истории будет использоваться вся вычислительная мощность?»). Более того, хотя альтернативный сценарий (50%, 200%, N%) изменит абсолютные значения наших результатов, он не изменит общую эволюцию показателей со временем.
Эффективность PoW Биткойна
Теперь, когда у нас есть модель пользы PoW Биткойна, давайте посмотрим, что мы можем узнать о его эффективности. Для этого определим два показателя.
Издержки единицы накопленных биткойн-дней, добавляемых данным блоком
Для получения этого первого показателя разделим вознаграждение за блок (см. допущение Д3 о предельных издержках и доходности майнинга Биткойна) на число накопленных дней Биткойна, которое блок добавляет существующим UTXO.
Получим следующее уравнение:
По определению, сумма стоимости всех существующих UTXO – это число существующих биткойнов, равное сумме вознаграждений всех предшествующих блоков:
Поэтому можно переписать наше уравнение:
и наконец в упрощённом виде:
Здесь стоит сделать несколько наблюдений.
Во-первых, издержки единицы выражены по умолчанию в биткойнах/накопленных биткойн-днях, но мы получим такой же результат, если выразим их в долларах/накопленных USD-днях (числитель и знаменатель нашего уравнения выражают сумму биткойнов в один и тот же момент).
Но главное, стоит заметить, что издержки единицы не зависят от внешних факторов, таких как рыночная цена или количество вычисленных хешей.
Издержки единицы зависят только от правил, определяющих контролируемое предложение валюты. Они определены заранее.
Рассмотрим график этого показателя.
Издержки единицы накопленных BTC-дней, добавляемых блоком N
Думаю, многих этот график удивит, но можно ясно увидеть, что издержки единицы со временем монотонно сокращаются. Такой результат можно объяснить совместным влиянием дефляционной модели Биткойна (уполовиниванием вознаграждений) и временной инфляции, вызванной созданием новых монет. Ситуация должна измениться, когда будут созданы все биткойны. Тогда на издержки единицы будут влиять внешние факторы, но сложно (если вообще возможно) спрогнозировать развитие ситуации. Отметим, что ситуация может также измениться раньше этой даты, если комиссия станет важной составляющей мотивации майнинга.
Средние издержки накопленных биткойн-дней, добавленных до данного блока
Для получения этого второго показателя сложим все издержки майнинга от первого блока до интересующего нас блока. После этого разделим эти общие издержки на сумму всех накопленных биткойн-дней, созданных этими блоками.
Обратите внимание, что мы выразим все издержки и суммы UTXO в долларах, потому что мы будем иметь дело со стоимостью UTXO в разное время.
Получим следующее уравнение:
Его можно переписать следующим образом:
и наконец в упрощённом виде:
Получим следующий график:
Средние издержки накопленных доллар-дней до блока N
Как и в случае издержек единицы, средние издержки указывают на то, что на самом деле PoW Биткойна со временем становится более эффективным. Такой результат может показаться противоречащим здравому смыслу из-за явного роста абсолютных издержек PoW Биткойна, но он начинает быть понятным, если осознать, что этот рост издержек уравновешивается ростом общей стоимости, обеспечиваемой системой.
В заключение
Мы обсудили, почему средние издержки на транзакцию не являются адекватным показателем для оценки эффективности PoW Биткойна и почему эту эффективность необходимо определить посредством обеспечения экономической истории.
Исходя из этого наблюдения и двух важных свойств PoW Биткойна (его глобального и кумулятивного влияния), мы формализовали пользу PoW с помощью очень простой математической формулы, определяющей общее число биткойн-дней, накопленных системой.
Наконец, мы вывели два показателя, из которых следует, что, вопреки распространённому мнению, PoW Биткойна становится всё более и более эффективным.
Продолжение можно доступно здесь.