На прошлых выходных состоялся официальный релиз форка Bitcoin XT. По заявлениям его авторов, больший размер блока увеличит пропускную способность сети, позволит делать больше транзакций и будет способствовать более широкому распространению криптовалюты. Почему тогда это решение вызвало столько споров? Почему разработчики Bitcoin Core давно не внедрили его? Мы же все стремимся к популяризации биткойна, не так ли? Кажется, что разработчики Bitcoin XT не говорят всей правды и сознательно ставят биткойн под удар.
Децентрализация и отсутствие доверия: принципы биткойна
Сатоши Накамото построил биткойн на принципах пиринговой (P2P) архитектуры. Вместо разработки самодостаточного приложения, которое бы работало на сервере и организовывало бы перевод средств между кошельками-клиентами, биткойн работает в режиме P2P: работа сети зависит от самих пользователей, производящих валидацию транзакций друг друга. Есть две причины, по которым была выбрана эта парадигма:
- сделать биткойн децентрализованным;
- дать сети возможность вырабатывать консенсус.
Механизм консенсуса нужен для решения проблемы двойной траты. Полный узел сети верифицирует каждую транзакцию и транслирует подтверждение валидности транзакций и содержащих их блоков другим узлам. Поэтому сеть постоянно поддерживает консенсус относительно общей для всех узлов истории, отражающей последовательность валидных транзакций.
Без доверия: стойкость к цензуре
Именно консенсус позволяет пользователями совершать транзакции, не доверяя друг другу. Не нужно исходить из предположения, что контрагент не будет пытаться потратить монеты дважды или что злонамеренная третья сторона не подделала иным образом историю транзакций, в результате чего некоторые монет перестали быть валидными. Протокол биткойна гарантирует, что монеты нельзя потратить дважды; история всех когда-либо потраченных монет хранится в общедоступной базе данных — блокчейне.
Преимущество децентрализованной природы сети биткойн — стойкость к цензуре. Как и в любой пиринговой сети, все узлы равны; любой узел не более важен и не стоит выше в иерархии, чем любой другой. Поэтому в сети нет единственной уязвимой точки. Сеть нельзя отключить, как Napster, когда представители ФБР получили ордер, вошли в серверную и выдернули провод.
Преимущества биткойна имеют свою цену:
Дороговизна. Майнинг расточителен в отношении ресурсов: он потребляет электричество, внося вклад в выбросы углекислого газа, и требует дорогостоящего оборудования для генерации решений proof-of-work и включения валидных транзакций в блокчейн.
Ненадёжность. Динамическая сложность и случайные факторы приводят непостоянной скорости генерации блоков. Иногда пользователи ждут включения транзакции в блок пять минут, иногда — до часа. В моменты, когда много транзакций претендуют на место в блоке, побеждают транзакции с высокими комиссиями; при этом заранее нельзя понять, достаточен ли размер комиссии и что произойдет с транзакцией.
Низкая скорость. Транзакции должны распространиться по сети и быть включенными в блок, что занимает в среднем 10 минут. Блок, в свою очередь, должен тоже распространиться по сети и быть признан валидным другими узлами сети. Считается, что транзакция «подтверждена», когда блокчейн увеличился на шесть блоков, считая блок, содержащий транзакцию.
Как следует из работы Сатоши Накамото, преимущества механизма консенсуса и транзакций без доверия, достигаемых посредством децентрализации, перевешивают описанные выше недостатки. Протокол биткойна намеренно избыточный, медленный и ненадежный, если сравнивать с централизованными альтернативами, такими как Visa и Mastercard.
Сатоши Накамото пришлось пожертвовать скоростью и пропускной способностью ради достижения главных целей. Биткойн — не подходящий соперник для Visa или PayPal, так как он плохо масштабируется.
Проблемы больших блоков
Возможно, призывы увеличить размер блока были вызваны непониманием ограничений протокола. Возможно, виной тому стало нежелание признать, что у биткойна есть характерные и неустранимые ограничения. Может быть, люди просто поленились подумать. К примеру, часто приходится слышать, что большие блоки позволят делать больше транзакций, что приведет к более широкому распространению биткойна.
Биткойн-транзакции может совершать любой. Пока пользователь порождает валидные транзакции, нельзя подвергнуть их цензуре. Если размер блока будет увеличен и, следовательно, количество транзакций с низкими комиссиями вырастет, что помешает корпорациям, банкам и правительствам использовать эту возможность для организации удобной сети для собственных нужд? Им не потребуется финансировать и разрабатывать собственную такую сеть (хотя Эквадор это сделал). Скорее всего, скорость и емкость сети биткойн обеспечивает достаточную надёжность для задач даже большого предприятия, если при этом требуется прозрачность отчетности.
Такие организации будут платить майнерам комиссию выше среднерыночной и в итоге займут X мегабайт в каждом блоке, оставив остальных с тем же одним мегабайтом. И в чем выгода? Распространению биткойна это не поспособствует. Среди разработчиков снова начнутся дискуссии об увеличении блока, и всё повторится заново.
Увеличенный размер блока будет использован не только вашей соседкой или представителем необеспеченных слоев, лишенным банковского обслуживания.
Мировое господство
Существующее ограничение 1 мегабайт на размер блока теоретически допускает совершение 7 транзакций в секунду при размере транзакции 250 байт. Давайте мысленно масштабируем биткойн до размеров Visa – 22 тысячи транзакций в секунду. 10 тысяч биткойн-транзакций в секунду требуют блоков по 1,6 ГБ; блокчейн будет расти на 87 ТБ в год или на 1,5 ТБ в неделю. (Пример не учитывает техническую невозможность такого сценария из-за задержек при валидации блоков по причине медленного распространения по сети 1,6-гигабайтных блоков.)
Это повлечет полную централизацию майнинга — ключевого механизма обеспечения безопасности сети. Допуская, что протокол может обработать такие объемы трафика (на самом деле не может), зададимся вопросом: многие ли из сегодняшний майнеров могу позволить себе оборудование, необходимое для сети такого размера? Кто, кроме элитного меньшинства, позволит себе поддерживать полный узел и вносить склад в надежность и безопасность сети?
Поиск консенсуса — медленный процесс. Безопасность сети прямо зависит от степени децентрализации. Из это следует, что ни Bitcoin Core, ни Bitcoin XT никогда не смогут соперничать с Visa. Но это и не было целью биткойна. В свою очередь, Visa, несмотря на свои тысячи транзакций в секунду, не предоставляет пользователям неподцензурный протокол для программируемых платежей, не требующих доверия.
Хранители биткойна
Консервативная фракция в споре о размере блока приводит свои технические доводы. Децентрализация биткойна не обеспечивается сама по себе. В протоколе не реализован «алгоритм децентрализации». Степень децентрализации лежит в области ответственности пользователей. Поскольку важно, чтобы как можно больше пользователей поддерживали полные узлы, распределение мощностей майнинга следует поощрять: много мелких пулов лучше, чем несколько крупных. Следует помнить об опасности атаки 51% одним пулом или несколькими сговорившимися пулами.
Ответственность за поддержание высокой степени децентрализации лежит на пользователях и разработчиках.
Если проблема настолько тривиальна и биткойн не масштабируется, почему же разработчики XT не принимают это во внимание? Им не единожды задавали вопрос: «Зачем вы подвергаете биткойн риску централизации, увеличивая размер блока?» Вместо ответ на этот вопрос, они заученно твердят что-то вроед: «но когда сеть достигнет предельной пропускной способности, случится что-то ужасное!» Ужасное в данном случае состоит в том, что рынок будет определять стоимость транзакций. И это все? Да, все остальное – это беспочвенные страхи и спекуляции: технически обусловленной опасности нет.
Вопрос в том, почему Гэвин Андрисен и Майк Хирн подвергают биткойн (и чужие деньги) риску централизации, пытаясь масштабировать его до масштабов, для которых он просто не предназначен был с самого начала?
Уровень 2: бесконечное количество транзакций
Разработчики Bitcoin Core предпочитают двухуровневую архитектуру сети: непосредственно биткойн играет роль первого уровня (core settlement layer); второй уровень — уровень микротранзакций — реализуется поверх первого. Разработка сети Lightning подразумевает парадигму, при которой в принципе неограниченное количество мгновенных биткойн-транзакций возможно при очень умеренном размере блока.
В завершение приведем цитату Эрика Воскуила (Eric Voskuil), разработчика Bitcoin и мейнтейнер libbitcoin:
«Вы, похоже, не понимаете, почему биткойн — лучшие деньги. Вы задумывались, почему биткойн-транзакции относительно недороги, хотя система крайне неэффективна? Эти две вещи связаны. Низкая стоимость передачи биткойнов — прямое следствие того, что никакое доверие не требуется. Любой компромисс [в области децентрализации] сведет на нет это преимущество.
Биткойн разработан для решения одной задачи, которую другие системы не решают. Для этого сделаны существенные уступки в других областях. Преимущества биткойна — невозможность государственного контроля. Связанные с этим издержки полностью устранены. В итоге биткойн дает нам преимущества, несмотря на высокие технические издержки.»
Но лишь до тех пор, пока Биткойн полностью децентрализован.
Источник: Bitnovosti