
Захват Биткойна. Скрытая история BTC
Другие способы использования
На первый взгляд кажется, что с Биткойном нельзя ничего сделать, кроме как отправить кому-то. Но у него есть и другие возможности. Блокчейн Биткойна – это публичная онлайн-бухгалтерия, которая поддерживается децентрализованной сетью компьютеров, а транзакции Биткойна становятся записями в этой бухгалтерии. Данные функции могут быть использованы в различных неденежных целях. Например, блокчейн можно использовать для хранения ценных данных, хотя это значительно дороже, чем другие способы хранения информации. Новые компании, работающие в сфере социальных сетей, используют эту функцию для создания платформ без цензуры на блокчейне. Другими сферами применения могут быть реестры активов, новые системы голосования или проверка личности для повышения безопасности в Интернете. По сравнению с полезностью Биткойна как общей платежной системы эти способы применения кажутся малозначимыми, но они существуют.
Думать, что Биткойн можно считать хранилищем ценности из-за его немонетарных свойств, все равно что считать долларовые купюры хранилищем ценности, потому что их можно использовать в качестве хвороста или туалетной бумаги. Хотя такая польза и существует, она ничтожна по сравнению с ценностью безопасного, международного средства обмена. Сатоши понимал, что способность Биткойна к пересылке – это главная особенность, которая придает ему ценность. Однако эта особенность была намеренно уничтожена разработчиками Bitcoin Core в результате чего BTC практически не имеет уникального преимущества по сравнению с другими криптовалютами. Другие монеты не только имеют более низкие комиссии, но и превосходят Биткойн по немонетарной функциональности.
Учитывая субъективную природу ценности, можно предположить, что рынок может выбрать BTC в качестве хранилища ценности. Но также возможно, что рынок выберет в качестве хранилища ценности старые вонючие спортивные носки. Возможно, но маловероятно. Разумнее считать, что криптовалюта, имеющая наилучшие шансы стать хранилищем ценности, должна усилить все свои положительные свойства и минимизировать отрицательные. Неудобные и дорогие транзакции – не самая желательная черта любого хранилища ценности или средства обмена. Известный интернет-предприниматель Ким Дотком, основатель MegaUpload, выразил схожие чувства в беседе в январе 2020 года, сказав:
Чтобы стать очень успешной криптовалютой, вам нужно обеспечить быстрые и дешевые транзакции, без этого никак не обойтись. Приятно быть хранилищем ценности, но если вы действительно хотите преуспеть, вам нужно быть электронными деньгами.
Ким также отметил, что подавляющее большинство людей до сих пор не имеют опыта использования криптовалют, и для того, чтобы привлечь их, необходимо, чтобы комиссии были низкими, а надежность – высокой.
Большинство людей ничего не знают о текущих войнах и о токсичности внутри криптосообщества. Они выбирают ту валюту, которая дает им самые дешевые комиссии, самые быстрые транзакции, наибольшую надежность, и в настоящее время, к сожалению, это не Биткойн.8
Представьте себе криптовалюту, обладающую всеми свойствами BTC, но в дополнение к этому позволяющую проводить мгновенные, почти бесплатные транзакции по всему миру и являющуюся специально созданным средством обмена для XXI века. Ее полезность была бы на порядки выше, чем у валюты без этой функциональности. Таков был первоначальный план создания Биткойна, и он остается планом для Bitcoin Cash и других криптовалют.
5. Ограничение размера блока
Если бы вы сказали мне в 2011 году, что в 2017 году мы не увеличим размер блока,
я бы ответил: «Этого не может быть». 1
– Стивен Пэйр, генеральный директор BitPay
Один-единственный технический параметр позволил разработчикам Bitcoin Core превратить Биткойн в совсем другой проект: «ограничение размера блока». Ограничение по размеру блока – это просто максимальный размер блока, допустимый в сети. Помните, что транзакции объединяются в блоки, поэтому чем больше транзакций, тем больше блоки. Это делает ограничение размера блоков фактически максимальным ограничением пропускной способности Биткойна. Bitcoin Core использовал крошечный лимит размера блоков, чтобы искусственно ограничить пропускную способность сети до малой части её потенциала.
Ограничение размера блока не должно было быть важным параметром, и оно не должно было быть достигнуто. Размер блока должен был оставаться намного выше среднего. Блоки никогда не должны были быть полностью заполнены, за редким исключением.
Требуется дополнительное пространство
Полный блок означает, что транзакций, которые необходимо обработать, больше, чем может поместиться в одном блоке, что немедленно приводит к росту комиссий и образованию задержек. В настоящее время один блок BTC вмещает 2 000—3 000 транзакций и создается каждые десять минут. Если 18 000 человек пытаются совершить одну транзакцию в течение десяти минут, то для обработки всех транзакций сети потребуется не менее шести блоков. Это один час на обработку каждой транзакции в очереди. Если 150 000 человек пытаются использовать Биткойн одновременно, то для обработки всех транзакций потребуется не менее пятидесяти блоков. Это более восьми часов ожидания.
Задержка обработки – не единственная проблема при перегрузке сети. Когда блоки переполнены, комиссия начинает расти. Более высокая комиссия не гарантирует, что ваша транзакция будет обработана быстро; она лишь позволяет вам сократить очередь перед другими транзакциями. Поскольку сеть не может обрабатывать более 3 000 транзакций в одном блоке, образуется очередь. Повышение комиссии увеличивает шанс того, что майнеры включат вашу транзакцию в следующий блок, но если достаточно людей заплатят больше, чем вы, ваша транзакция будет отодвинута дальше в очереди. Это приводит к росту платы и создает ужасные условия для пользователей. Как только блоки переполняются, комиссия может вырасти с десяти центов до доллара, затем до пяти, десяти, двадцати, пятидесяти долларов или даже больше, если эту комиссию готовы платить достаточное количество людей. Во время скачков платы в 2017 и 2021 годах некоторые сложные транзакции стоили более 1000 долларов, и в итоге мне пришлось платить несколько раз. Быстрый поиск в блокчейне транзакций с комиссией от 900 до 1100 долларов дает почти 35 000 результатов.2
Биткойн часто сравнивают с электронной почтой за его способность мгновенно соединять людей через интернет. Представьте себе, что электронная почта не могла бы выдержать 150 000 человек и требовала бы восемь часов на отправку и получение сообщений. Это, несомненно, считалось бы досадным недостатком системы. Однако при таких сбоях в сети транзакции могут зависнуть на несколько дней, а то и на целую неделю на пике нагрузки. Именно поэтому предполагалось, что предельный размер блока будет намного превышать спрос на транзакции, как отдаленное техническое ограничение, которое не повлияет на функциональность системы. Биткойн будет масштабироваться по мере использования, а лимит будет либо увеличен, либо вообще снят.
Разрешение блокам расти естественным образом позволило бы сохранить Биткойн в качестве цифровой денежной системы с низкими комиссиями за транзакции и всеобщим доступом к блокчейну. Но разработчики Core хотели превратить Биткойн в расчетную систему для крупных переводов, поэтому они отказались увеличивать размер блока. Единственная причина, по которой комиссии выросли до астрономических уровней, а сеть стала ненадежной, заключалась в том, что блоки были слишком малы, чтобы удовлетворить спрос.
Бесчисленное множество разработчиков, предпринимателей и энтузиастов знали, что лимит размера блока необходимо увеличить. Они знали, что переполненные блоки приведут к ужасному пользовательскому опыту, и видели, что блоки становятся все более заполненными по мере роста популярности Биткойна. Однако, несмотря на бесконечные споры и просьбы пользователей, разработчики Core отказались увеличить лимит. Они до сих пор не смогли значительно увеличить максимальную пропускную способность транзакций по сравнению с уровнем 2010 года. Одна фотография на вашем смартфоне по размеру больше целого блока BTC, иногда значительно больше, в зависимости от качества изображения. В конечном итоге это повлекло раскол в криптовалютной индустрии и стало причиной создания Bitcoin Cash.
Причина ограничения размера блока
К тому времени, когда Сатоши Накамото покинул Биткойн, над проектом работало множество увлеченных и талантливых разработчиков, но двое из них были исключительными: Гэвин Андресен и Майк Хирн. Сатоши выбрал Андресена в качестве своего преемника и ведущего разработчика проекта. Естественно, он также был сторонником больших блоков. На протяжении многих лет он писал в своем блоге3 популярные статьи о Биткойне и масштабировании, культуре разработчиков, экономике и других темах.4 Он был мягким человеком, возможно, даже в ущерб себе. Хирн, напротив, был более прямолинейным разработчиком, который более открыто выступал против сторонников малых блоков, которые, по его мнению, подрывали проект. Его предыдущий опыт работы был особенно важен. Хирн ушел из Google, чтобы работать над Биткойном. Работая в Google, он три года занимался планированием пропускной способности Google Maps – одного из самых популярных сайтов в мире. Таким образом, он был хорошо знаком с проблемами пропускной способности сети. Как и Сатоши, Андресен и Хирн были сторонниками больших блоков и не считали, что у Биткойна будут проблемы с масштабированием. В своих сообщениях в блогах, электронных письмах, беседах на форумах и публичных интервью Андресен и Хирн лучше, чем кто-либо другой, отразили первоначальное видение Биткойна. Их комментарии рекомендуются к прочтению и цитируются в этой книге.
Когда писался первоначальный код Биткойна, не было четкого ограничения на размер блоков, которые можно было бы создавать. Все изменилось в 2010 году, когда Сатоши добавил ограничение на размер блока, чтобы предотвратить потенциальную атаку типа «отказ в обслуживании», пока Биткойн был еще молод. В своем блоге Гэвин Андресен объяснил причины первоначального ограничения:
«… Ограничения были введены для предотвращения атаки „ядовитого блока“ на отказ в обслуживании сети. Мы должны были беспокоиться об атаках типа „отказ в обслуживании“, пока они были недороги для злоумышленника… Атака, которую блокировало это ограничение, сегодня стоит гораздо дороже…»
15 июля 2010 года на бирже торговалось около одиннадцати тысяч Биткойнов по средней цене около трех центов за штуку. Вознаграждение за блок тогда составляло 50 BTC, поэтому майнеры могли продать блок монет примерно за 1,50 доллара.
Это дает приблизительное представление о том, во сколько злоумышленнику обойдется создание «ядовитого блока» для нарушения работы сети – доллар или два. Многие люди готовы потратить доллар или два «ради забавы» – им нравится доставлять неприятности, и они готовы потратить либо много времени, либо скромную сумму денег, чтобы доставить неприятности.5
Первоначальный лимит был установлен на уровне одного мегабайта, что позволяло теоретически ограничиться семью транзакциями в секунду. На практике реальный лимит составляет около трех-четырех транзакций в секунду, что соответствует 2000—3000 транзакций на цепочке за блок – намного выше фактического использования сети в те дни. Планировалось просто увеличить лимит или полностью его отменить. Андресен отметил на форумах:
С самого начала планировалось поддерживать огромные блоки. Жесткое ограничение в 1 МБ всегда было временной мерой по предотвращению отказа в обслуживании.6
Рэй Диллинджер, еще один ранний сторонник Биткойна, сказал то же самое:
Я тот парень, который изучил блокчейн в первой версии кода Биткойна, созданной Сатоши. У Сатоши не было ограничения в 1 МБ. Изначально ограничение было идеей Хэла Финни. И Сатоши, и я возражали, говорили, что оно не будет масштабироваться с 1 МБ. Однако Хэл был обеспокоен потенциальной DoS-атакой, и после обсуждения Сатоши согласился… Но все трое согласились, что ограничение в 1 МБ должно быть временным, потому что иначе оно никогда не будет масштабироваться.7
Единодушное согласие Сатоши, Хэла и Рэя особенно интересно, поскольку Хэл Финни часто считается сторонником небольших блоков. Но даже он согласился с тем, что ограничение в 1 МБ должно быть временным. Однако по сей день разработчики Bitcoin Core отказываются существенно увеличить размер блоков сверх первоначального уровня, установленного в 2010 году, несмотря на масштабные улучшения в программном обеспечении, оборудовании и сетевых технологиях. Практически все крупнейшие компании индустрии неоднократно пытались увеличить лимит, но разработчики Core отказались, даже после публичного согласия на увеличение. Вместо этого они изменили метрику размера блока на «вес блока» и заявили, что новый лимит составляет 4 МБ, но это в значительной мере трюк и не соответствует увеличению пропускной способности в четыре раза.
Искаженный дизайн
Простой причиной, по которой разработчики Core отказались увеличить лимит, – заключается в том, что они хотели изменить дизайн Биткойна. Чем быстрее заполнятся блоки, тем быстрее вырастут комиссии за транзакции, они считали это желательным. Жорж Тимон, разработчик Core, заявил: «Я согласен с тем, что увеличение лимита не только не плохо, но и даже хорошо для такого молодого и незрелого рынка, как комиссии Биткойна». 8 А Грег Максвелл прямо заявил: «Нет ничего плохого в полностью заполненных блоках… Заполненные блоки – это естественное состояние системы». 9
Чтобы понять, насколько радикальны эти идеи, сравните их с идеями, с которыми вы могли бы столкнуться в первые дни существования Биткойна, когда сеть Visa часто использовалась в качестве сравнения по пропускной способности транзакций. Еще в 2009 году Сатоши спросили о способности Биткойна к масштабированию, и он ответил:
Существующая сеть кредитных карт Visa обрабатывает около 15 миллионов интернет-покупок в день по всему миру. Биткойн уже может обработать гораздо больше, чем это, используя существующее оборудование за долю стоимости. Он никогда не достигнет потолка масштабирования.10
Это было общепринятым пониманием в течение многих лет. Хотя сегодня мы бы назвали это частью «видения Сатоши», тогда это было почти всеобщим видением. Например, если бы вы изучали Биткойн в 2013 году, то, скорее всего, наткнулись бы на его страницу в Wiki. Вот что говорилось в разделе «Масштабируемость»:
Основная сеть Биткойн может масштабироваться до гораздо более высоких объемов транзакций, чем сегодня, при условии, что узлы сети работают в основном на высококлассных серверах, а не на настольных компьютерах. Биткойн был разработан для поддержки легких клиентов, которые обрабатывают только небольшие части цепочки блоков…
Конфигурация, в которой подавляющее большинство пользователей синхронизируют легковесные клиенты с более мощными магистральными узлами, способна масштабироваться до миллионов пользователей и десятков тысяч транзакций в секунду…
Сегодня сеть Биткойна ограничена устойчивой скоростью в 7 транзакций в секунду благодаря некоторым искусственным ограничениям. Они были введены для того, чтобы не дать людям увеличить размер цепочки блоков до того, как сеть и сообщество будут к этому готовы. Как только эти ограничения будут сняты, максимальная скорость транзакций значительно возрастет… При очень высокой скорости транзакций размер каждого блока может превышать пол гигабайта.11
Это было общеизвестно. Все понимали, что система рассчитана на масштабирование с помощью больших блоков, и это даже не вызывало споров. Андресен заявил, что масштабируемость Биткойна была частью той причины, которая привела его в проект:
Когда я впервые услышал о Биткойне, он был достаточно небольшим проектом, чтобы я мог прочитать все, и я прочитал, включая все эти сообщения в рассылке. Обещание системы, которая по масштабам может сравниться с Visa, – это часть того видения, которое помогло мне выбрать Биткойн.12
В 2013 году Visa обрабатывала, в среднем, около 2 000 транзакций в секунду. Чтобы получить 2 000 транзакций в секунду в Биткойне, блоки должны были быть примерно по 500 МБ, что является вполне возможным объемом. Современные мобильные телефоны могут легко записывать и загружать HD-видео размером в 1 гигабайт, что в несколько раз превышает размер блока Биткойна, содержащего более миллиона транзакций. Масштабирование до такого уровня требует большего, чем простое увеличение максимального размера блока, но нет никаких фундаментальных причин, почему это нельзя сделать. На самом деле Bitcoin Cash уже успешно создал несколько блоков размером 32 МБ, а недавнее ответвление Bitcoin Cash, Bitcoin SV, даже создало блок размером 2 ГБ. Эти сети не сломались. У Сатоши был простой и окончательный ответ на вопросы о размере блоков:
Было бы неплохо, чтобы файлы блокчейна оставались небольшими, пока это возможно. Конечное решение будет заключаться в том, чтобы не беспокоиться о том, насколько большими они станут.13
Высокие тарифы и медленные транзакции
Зачем разработчикам Bitcoin Core высокие комиссии? Для начинающего энтузиаста Биткойна или даже для обычного человека очевидно, что это плохая идея. Но на самом деле высокие комиссии – это неизбежный результат философии сторонников малых блоков. Чтобы понять почему, нам нужно более внимательно проанализировать систему. Как объяснялось в главе 2, майнеры получают вознаграждение двумя способами. Они получают комиссионные за обработку транзакций и вознаграждение за новый блок. Поскольку вознаграждение за блок со временем уменьшается, единственным источником дохода в конечном итоге будут транзакционные сборы. А поскольку разработчики Bitcoin Core стремятся к созданию малых блоков, единственный способ для майнеров заработать в их системе – это чрезвычайно высокие комиссии за транзакции. Биткойн не может работать без оплаты труда майнеров, а если они могут обрабатывать только 3 000 транзакций в одном блоке, то для поддержания безопасности комиссии должны составлять сотни или тысячи долларов за транзакцию. Разработчик Bitcoin Core Жорж Тимон открыто говорил об этой проблеме:
В долгосрочной перспективе Биткойну нужен конкурентный рынок комиссий, чтобы поддерживать [доказательство работы] после сокращения вознаграждений [за блок]. Я очень рад, что теперь он у нас есть…14
Питер Вуйль, другой Bitcoin Core разработчик, сказал:
Мое личное мнение заключается в том, что мы, как сообщество, должны позволить рынку комиссий развиваться, и чем раньше тем лучше.15
Они тактично называют задержки транзакций и высокие комиссии «рынком комиссий», где пользователи торгуются друг с другом за крошечное пространство внутри блоков. И эта странная и ненужная модель безопасности является поводом для празднования, где разработчики Core хвалят высокие комиссии и медленные транзакции. Грег Максвелл заявляет:
Бремя комиссии является преднамеренной частью дизайна системы и, насколько мы понимаем, необходимо для ее долгосрочного выживания. Так что, да. Это хорошо.16
А когда в декабре 2017 года плата выросла до 25 долларов, Максвелл пресловуто отреагировал:
Лично я пью шампанское за то, что поведение рынка действительно обеспечивает уровень активности, позволяющий оплачивать безопасность без инфляции, а также создает очередь на оплату комиссий, необходимых для стабилизации прогресса консенсуса по мере уменьшения вознаграждений за блоки.17
Конечно, Сатоши Накамото не разрабатывал Биткойн таким образом. Предполагалось, что майнеры будут окупать свои затраты за счет обработки большого количества низкооплачиваемых транзакций в больших блоках. На форумах Сатоши спросили о долгосрочной модели доходов для майнеров. Он объяснил:
Через несколько десятилетий, когда вознаграждение станет слишком маленьким, плата за транзакции станет основным вознаграждением для майнеров. Я уверен, что через 20 лет объем транзакций будет либо очень большой, либо его не будет вообще.18
Заметьте, он не сказал: «Через 20 лет будет либо большой объем транзакций, либо маленький объем с чрезвычайно высокими комиссионными за транзакции». Это показалось бы сомнительным любому здравомыслящему человеку. Он предсказал либо большой объем, либо его полное отсутствие.
Новый Биткойн
Искусственно ограничив размер блока, разработчики Bitcoin Core нашли способ полностью изменить динамику системы. Мало того, что пользовательский опыт изменился с «почти мгновенных и бесплатных транзакций» на «дорогие и ненадежные транзакции», радикально изменилась и базовая экономическая модель. BTC теперь делает ставку на то, что будущие пользователи будут готовы платить сотни или тысячи долларов за транзакцию на цепочке, несмотря на наличие более совершенных альтернатив. В противном случае майнерам придется закрыть большую часть своего оборудования, потому что оно не будет приносить прибыль.
Учитывая это – не будет преувеличением сказать, что BTC был захвачен, а первоначальный дизайн был заменен на новый, спекулятивный. Именно поэтому Виталик Бутерин, сооснователь Ethereum, публично заявил:
Я считаю BCH «законным» претендентом на имя Биткойна. Я считаю, что неспособность Биткойна увеличить размер блока, чтобы сохранить разумные комиссии, является большим (несогласованным) изменением «первоначального плана», что с моральной точки зрения равносильно хард форку.19
Неспособность Bitcoin Core увеличить лимит размера блоков не была просто научной. Она имела реальные последствия для бизнесов, работающих на Биткойне или просто принимающих его к оплате. После скачка комиссий в 2017 году индустрия Биткойна впервые столкнулась с проблемой отторжения. Когда популярная игровая платформа Steam объявила о том, что больше не принимает Биткойн, она публично объяснила причины этого20:
С сегодняшнего дня Steam больше не будет поддерживать Биткойн в качестве способа оплаты на нашей платформе из-за высоких комиссий и волатильности стоимости Биткойн… [Комиссия за транзакции, взимаемая с клиента сетью Биткойн, резко выросла в этом году и на прошлой неделе достигла почти $20 за транзакцию (по сравнению с примерно $0,20, когда мы первоначально добавили Биткойн)]…
При оформлении заказа в Steam покупатель переводит сумму Х Биткойнов за стоимость игры, плюс У сумму Биткойнов для покрытия комиссии за транзакцию, взимаемой сетью Биткойн. Стоимость Биткойна гарантируется только на определенный период времени, поэтому если транзакция не будет завершена в течение этого времени, то сумма Биткойна, необходимая для покрытия транзакции, может измениться. В последнее время сумма может измениться настолько, что может значительно отличаться.
Обычным решением в этом случае является либо возврат пользователю первоначального платежа, либо просьба перевести дополнительные средства для покрытия оставшегося баланса. В обоих случаях пользователь снова оплачивает комиссию за транзакцию в сети Биткойн. В этом году мы наблюдали, как все большее число клиентов попадает в такое положение. Поскольку комиссия за транзакцию сейчас так высока, возвращать деньги или просить клиента перевести недостающий баланс нецелесообразно (что само по себе чревато повторной недоплатой, в зависимости от того, насколько изменится стоимость Биткойна, пока сеть Биткойн будет обрабатывать дополнительный перевод).
На данный момент поддержка Биткойна как способа оплаты стала невозможной. Мы можем пересмотреть вопрос о том, имеет ли Биткойн смысл для нас и для сообщества Steam, позднее…
– Команда Steam
Невозможно винить Steam за их решение. Попытка использовать Биткойн, когда блоки переполнены, могла стать ужасным опытом. Клиенты, желающие получить возврат, гарантированно потеряют деньги. Если они возвращают деньги за игру стоимостью 30 долларов, а комиссия за транзакцию стоит 10 долларов, пользователи могут потерять 20 долларов и ничего не получить. На мой взгляд, если бы вы хотели сломать Биткойн, лучшим способом было бы заполнять блоки записями о транзакциях до отказа. Если бы высокие комиссии и задержки в обработке были вызваны техническим сбоем, это, возможно, было бы лучше для Биткойна, поскольку это новая технология и проблему можно было бы считать случайностью. Но вместо этого общественности внушили, что высокие комиссии – это вполне нормально, что не стоит использовать Биткойн для повседневных покупок и что блокчейн на самом деле не может масштабироваться.
У сторонников BTC есть несколько стандартных ответов на эту критику. Если они не знают, что высокие комиссии являются частью намеренного редизайна Биткойна, они часто любят говорить: «На самом деле комиссии – это не проблема. Посмотрите, в этот самый момент комиссии низкие!» Но это слабый аргумент. В любой момент времени плата за пользование BTC может быть низкой, но только потому, что в сети мало трафика. Если её будет использовать больше людей, то загрузка быстро увеличится, и плата снова подскочит. Это похоже на автомобильное движение. Если в три часа ночи дороги пустые, это не значит, что Лос-Анджелес решил свои проблемы с пробками. Если блоки BTC не заполнены, то сборы будут низкими, но если блоки будут заполнены и активность возрастет, то сборы неизбежно вырастут до экстремальных уровней.