Да, она есть. Она не была решена раньше, и положение ухудшается со временем.

Биткоин работает на программном обеспечении, которое создано программистом или группой программистов, действовавших под псевдонимом в 2007-2009 годах. Несмотря на многие улучшения, которые вносили разработчики на протяжении всего существования биткоина, основной код остался тем же, что и восемь лет назад.

Проблема состоит в том, что сейчас мир биткоина значительно отличается от того, каким он был на заре развития криптовалюты. Количество пользователей выросло с нескольких десятков человек до нескольких десятков миллионов .

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

Почему биткоин не в состоянии обработать все сделки?

Проблема заключается в определённом параметре, который называется «предел размера блока».

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

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

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

Однако это решение имеет неблагоприятный долгосрочный эффект для пропускной способности сети в целом.

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

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

К чему приводит неэффективный предел размера блока?

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

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

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

Есть ли у проблемы масштабирования решение?

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

Проблема масштабирования исследуется давно. Два первых серьёзных предложения по её исправлению содержатся в BIP и BIP , где BIP означает «предложения по улучшению биткоина» (Bitcoin Improvement Proposal). Они были представлены в 2015 году разработчиками ядра биткоина Джеффом Гарзиком и Гэвином Андресеном соответственно.

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

По поводу того, какое из предложений принять, в сообществе биткоина велись жаркие споры весь 2015 год. Однако они оказались бесплодными. Ни BIP 100, ни BIP 101 на сегодняшний день так и не реализованы.

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

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

Каким образом SegWit предлагает масштабировать биткоин?

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

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

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

Почему не внедрён SegWit?

У SegWit также есть проблемы с децентрализацией. Сам по себе он увеличивает ёмкость блока примерно на 60%, чего достаточно только для краткосрочного решения проблемы. Он полагается на увеличение пропускной способности сети за счёт сайдчейнов и , а это централизация.

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

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

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

Гонконгское соглашение

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

Фактически соглашение о компромиссе уже было достигнуто как минимум один раз. Речь идёт о круглом столе, который состоялся в феврале 2016 года в Гонконге с участием представителей Bitcoin Core, которые являются авторами SegWit, и некоторых крупных майнинговых компаний, заинтересованных в неограниченном увеличении размера блока. Обе стороны стремятся достичь соглашения - продвинуться в реализации SegWit и временно увеличить размер блока до двух мегабайт.

К сожалению, гонконгское соглашение не было выполнено: разработчики Bitcoin Core не зафиксировали в проекте, что перед внедрением SegWit будет увеличен размер блока, таким образом, майнеры отказались принимать его.

Хотите больше новостей?

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

В настоящее время сеть может поддерживать до семи блокчейн-транзакций в секунду (на практике — три), хотя многие транзакции происходят вне блокчейна. Для сравнения, PayPal обрабатывает около 100 транзакций в секунду, а Visa — около 4000 в секунду.

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

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

Мы опросили наших читателей, чтобы выяснить, какое решение для масштабирования они предпочитают.

Варианты

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

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

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

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

Для текущего развёртывания SegWit требуется одобрение 95% майнеров, чтобы обновление было активировано. Голосование проводится майнерами, которые включают определённые данные в блоки, которые они майнят, тем самым сообщая свое решение относительно предложения.

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

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

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

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

В начале прошлого месяца было обнародовано новое предложение, которое получило значительную поддержку от некоторых крупнейших в мире Биткойн-компаний и майнеров. 23 мая на конференции « » руководители Биткойн-стартапов и майнеры провели встречу, на которой было более чем 50 компаний, включая Digital Currency Group, Bitcoin.com, Blockchain, Coinbase, ShapeShift, а также крупных игроков в майнинге, таких как Bitmain и BitFury. Предложение включает в себя снижение барьера для активации SegWit до 80% майнинговых мощностей сети. Технической информации по этому предложению всё ещё мало, однако решение будет основываться на новом программном обеспечении, которое в настоящее время не разработано и может быть несовместимо с существующим программным обеспечением. Несмотря на поддержку некоторых крупнейших компаний, многие критикуют сложность решения и полагают, что оно используется как попытка заблокировать активацию софт-форка пользователями.

Результаты

CoinJournal провел опрос, на котором было опрошено более 1100 читателей *, какому из предложений они отдают предпочтение. Результаты показывают, что СегВит является явным победителем, и 71% респондентов выбрали этот вариант в качестве своего предпочтительного решения. Примерно 18% ответили Bitcoin Unlimited, а около 11% сказали, что предпочитают другое решение. Респондентам также была предоставлена ​​возможность прокомментировать, и многие из них выразили поддержку активации софт-форка пользователями ().


Результаты опроса: варианты масштабирования Биткойна

*Пользователи были выбраны случайным образом и разрешена только одна запись на IP-адрес / устройство.

Кстати, заметим, что 74% респондентов заявили, что будут скучать по дебатами о масштабировании.

К завершению этого исследования, на конференции «Консенсус 2017» было достигнуто соглашение между различными Биткойн-компаниями и майнерами, и концепция активации пользователями софт-форка для СегВит (посредством BIP-148) приобрела некоторых сторонников. Тем не менее, поддержку обоих этих предложений среди пользователей Биткойна по-прежнему трудно измерить. На данный момент, похоже, это два основных предложения.

Что думает сообщество

Мы опросили нескольких видных представителей отрасли, каков их предпочтительный метод масштабирования и почему.

Самсон Моу (Samson Mow), руководитель отдела технологических исследований компании Blockstream:

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

Говорят, что все, что делает компания — это маркетинг — начиная от найма работников и заканчивая обслуживанием клиентов, и др. Этот же принцип применим и для масштабирования. Все, что разработчики биткойна делали последние 7 лет — это масштабирование Биткойна. Любой, кто близко работал с Биткойном на любом уровне, знает, что были огромные улучшения масштабирования: кэширование подписи, ультрапрун, проверка параллельного скрипта, первая синхронизация заголовков, обрезка файлов блоков, libsecp256k1, ограничение пула памяти, и этот список можно продолжить. К сожалению, большинство людей не заботятся о том, чтобы внимательно следить за развитием или читать общедоступные журналы чата, обсуждения по электронной почте и протоколы совещаний. Эта проблема ещё более усугубляется, когда «капитаны индустрии» делают вводящие в заблуждение и безответственные заявления о развитии. Самый нелепый пример такого заявления сделал генеральный директор небольшого стартапа Интернет-дискаунтера, в котором говорится, что 400 или около того разных географически распределенных добровольцев из Bitcoin Core являются «монополией».

СегВит — это решение для тех, кто требует большей пропускной способности; Ничто другое даже не приближается к жизнеспособности».

Йосия Эрнандес (Josiah Hernandez), руководитель отдела стратегии компании Coinsource

«СегВит — изящное решение сложной проблемы. Это кульминация многолетних исследований, испытаний и разработок, которое уже в значительной степени достигло консенсуса между бизнесом и Биткойн-узлами. Предоставляя основу для решений масштабирования уровня 2, таких как Lightning Network, он также предлагает способ, который поможет немедленно решить проблемы растущего давления комиссий и увеличения время подтверждения транзакций с помощью эффективного увеличения размера блока до 2 МБ. Как и прежде, это идеальное предложение на рынке.

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

Эмин Гюн Сиер (Emin Gün Sirer), доцент, Cornell University

«Я считаю, что единственное серьезное предложение — это то, чего еще нет в таблице: можем ли мы разработать протокол таким образом, чтобы исключить узкое место в распространении блоков? Bitcoin-NG показал, что это возможно, и ByzCoin провел дополнительные исследования. В долгосрочной перспективе в моём понимании нет сомнений, что продвинутые монеты будут использовать методы, подобные Bitcoin-NG.
Когда дело доходит до масштабирования в краткосрочной перспективе, у нас есть СегВит как одна крайность, и, ввиду того, что про-СегВит команда вообще не сдвинулась с места, большое количество предложений, которые все очень близки к СегВит. В интеллектуальном плане патч СегВит запутан; мало способствует масштабированию; процесс, который привёл к этому, не является здоровым, и невозможно оправдать выдачу субсидий в централизованном порядке, чтобы стимулировать его принятие. Но опять же, финансовое программное обеспечение всегда было беспорядочным, и, возможно, неизбежно, что Биткойн также потеряет свою элегантность формы. Я считаю, что реальные долгосрочные решения включают в себя лучшие технологии, такие как Bitcoin-NG, и я согласен с любым решением в краткосрочной перспективе».

Питер Ризун (Dr. Peter Rizun), главный научный сотрудник

«Многие люди сбиты с толку: большие блоки и СегВит не являются взаимоисключающими. Увеличение базового лимита размера блока является наиболее актуальным, поскольку оно будет иметь непосредственный эффект уменьшения сборов и повышения надёжности подтверждения. Если есть реальный спрос на СегВит, мы можем применять его тоже; здесь нет взаимоисключения: или один – или другой».

Саймон Юй ( Simon Yu), генеральный директор CakeCodes

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

Сергей Пономарёв , генеральный директор SONM

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

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

Курс биткоина непрерывно растёт на протяжении всего 2017 года – это чуть ли не главный показатель востребованности «цифрового золота» в мире.

Однако при всём своём благополучии сеть биткоина не лишена серьезных проблем. Главная из них – масштабируемость транзакций в сети. Эта проблема зародилась вместе с самим биткоином и продолжает усугубляться по мере разрастания его блокчейна. До сих пор она не находит однозначного решения среди специалистов, и от их решения зависит, по какому пути пойдёт развитие «цифрового золота». Останется ли он децентрализованным и свободным средством оплаты, или сконцентрируется в руках крупных инвесторов?

Суть биткоина и проблема с масштабируемостью блоков

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

Блок содержит в себе данные об отправителе, получателе, количестве передаваемых биткоинов и прочие данные.

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

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

Однако, как бы ни был успешен биткоин, «родовой травмы» при создании избежать не удалось. Всё дело в том, что автор криптовалюты Сатоши Накамото в 2010 году ограничил размер блоков 1 Мб. Прочие цепочки решений большего размера отметались системой как недействительные.

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

Сейчас теоретически биткоин-сеть может обрабатывать 5-7 транзакций в минуту. По факту же производительность не превышает 3-4 сделок. Типична ситуация, когда пользователи ждут по нескольку часов и даже дней, пока пройдёт их транзакция. Для сравнения: международная система Visa проводит по 2 тысячи операций в секунду.

Особенно это заметно во время пиковых обращений, как это было после недавней отмены форка SegWit2x – тогда в сети подвисло свыше 135 тысяч транзакций.

Помимо этого, разрастание сети приводит к увеличению комиссии при транзакциях. При небольшом их количестве она мизерная и не превышает $0,01. Однако при огромном количестве участников стоимость переводов может достигать уже $4-10.

Что такое форки bitcoin

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

В зависимости от радикальности форки делят на:

  • Мягкие (легкие), или софтфорки (softfork) . Они не меняют кардинальным образом протокол блокчейна и лишь некоторым образом обновляют его. Сеть продолжает функционировать по прежним правилам;
  • Жесткие (тяжелые), или хардфорки (hardfork) . Здесь уже правила (к примеру, размер блока) меняются кардинально, и добыча криптовалюты по прежним правилам уже становится невозможна. В результате происходит разделение блокчейна на две самостоятельные части, которые начинают функционировать независимо друг от друга. Иными словами, появляется две самостоятельных цепочки, которые не могут взаимодействовать, потому что протоколы одной несовместимы с другой.

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

Подобное произошло с биткоином после хардфорка SegWit (Segregated Witnesses), в результате которого на свет появился Bitcoin Cash. В общем и целом, он родился из-за несогласия некоторой части майнеров с политикой основной сети.

Bitcoin Cash по сути стал попыткой решить проблему масштабируемости за счёт увеличения размера блока до 8 Мб. Однако подписи транзакций по-прежнему записываются в сам блок, поэтому существенного прироста скорости получить не удалось.

В нынешнем своём виде BCH – прямой конкурент биткоину. Инвесторы начинают использовать его как резервный актив. Более того встречаются даже высказывания о том, что он и является истинным биткоином, как это было недавно в ходе . Впрочем, как выяснилось, подобные заявления оказались всего лишь спекуляциями ради накачки курса.

Почему SegWit не смог решить проблему масштабируемости

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

Гибкость транзакций связана со сложностью алгоритма подписей – благодаря им идентифицируется тот или иной блок в сети. В идеале проверка подписей должна быть вынесена за пределы блокчейна, и проверяться сторонней сетью (сайдчейном). Иными словами, должна присутствовать некая доверенная третья сторона в роли арбитра.

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

При чём здесь сайдчейны и как Lightning Network может помочь

Любая блокчейн-сеть требует консенсуса всех заинтересованных сторон: разработчиков, майнеров, инвесторов. Хардфорки, из-за которых родились Bitcoin Cash и Bitcoin Gold, ведут к расколу сообщества. Часть решает поддерживать старую сеть, другая – начинает активно вкладываться в новые валюты. Блокчейн как никакая другая система чувствителен к обновлениям программного обеспечения — таким он был задуман.

На минувшей неделе едва не случился очередной раскол из-за хардфорка SegWit2x, против которого высказывались и разработчики Bitcoin Core. Предполагалось, что он увеличит размер блоков транзакций до 2 Мб и внесет некоторые коррективы в работу блокчейна. Причиной стало как раз отсутствие консенсуса между игроками, последствия для работы всей системы были бы непредсказуемы.

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

Однако проблему масштабируемости решать всё равно придётся. Как заявил один из разработчиков Bitcoin Core Питер Ризун:

«Мы либо дадим людям более крупные блоки на биткоине, либо они уйдут туда, где это уже сделано – в Bitcoin Cash».

В итоге единственной альтернативой для решения этой задачи остались сайдчейны.

Что такое сайдчейн (side chain)? Это сторонняя цепочка вычислений, вынесенная за пределы основного блокчейна. Таким путём возможно распределить часть транзакций между ними и тем самым снять часть нагрузки с основной сети.

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

Одним из таких многообещающих проектов с использованием смарт-контрактов является Lightning Network. Его авторами является коллектив участников блокчейна: Конрад Берчер, Роджер Ваттенхофер и Кристиан Декер.

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

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

В чём сложность с внедрением Lightning Network

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

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

Так или иначе, проблема с масштабируемостью биткоина до сих пор актуальна. Каким образом разработчики Lightning Network будут работать над увеличением размера блока, пока неясно. В любом случае, похоже, сейчас это единственный реальный вариант сохранить децентрализацию биткоина.

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

По сути, Lightning стремится решить большую проблему, нависшую над Биткойном в последние годы: как это ни смешно, но . Каждый полный узел пиринговой сети Биткойна должен загружать и хранить копии всех транзакций, когда-либо совершённых в сети.

Изначально такой замысел был важен для реализации задуманной Накамото полностью децентрализованной платёжной сети. Но, как сказал специалист по компьютерным наукам из Университета Пердью Педро Морено-Санчес, когда сеть становится более популярной, это создаёт большую проблему. «Мы достигли стадии, когда дальнейший рост нецелесообразен» , – сказал он.

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

Фактически проект Lightning потенциально может сделать намного больше. Ожидается, что будут более быстрыми, дешёвыми и конфиденциальными, чем обычные платежи Биткойна. Сторонники рассматривают Lightning как новый, второй уровень программного комплекса Биткойна. Они надеются, что Lightning увеличит привлекательность Биткойна, точно так же как веб помог обрести популярность интернету.

Ключевые идеи Lightning выдвинули в whitepaper за 2015 г. Джозеф Пун и Таддеус Драйджа, но понадобилось три года, чтобы превратить их предложения в полноценный рабочий код. Сегодня три разных компании – стартапы из Сан-Франциско и Lightning Labs и парижский стартап ACINQ – работают над параллельной реализацией технологии Lightning. В декабре трио опубликовало версию 1.0 спецификации Lightning , и теперь компании спешат сделать их ПО готовым для использования широкой публикой.

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

Например, транзакции биткоина увеличились в несколько раз: со 100 тысяч до 10 миллионов за пять лет. В сети Эфириум количество транзакций поднялось до 500 тысяч.

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

Проблема масштабируемости криптовалют

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

Система TpS
PayPal 193
Visa 1667
Ethereum 20
Bitcoin (без segwit) 7

Единственный способ улучшить эти цифры - работать с масштабируемостью. Эти проблемы можно сгруппировать таким образом:

  • время добавления транзакции в блок,
  • время достижения консенсуса.

Время добавления в блок

Транзакция осуществляется, когда майнер помещает данные транзакции в блоки. Когда вы отправляете кому-то BTC, вы, по сути, отправляете данные о транзакции, майнер обрабатывает их, и сделка будет считаться завершенной.

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


Среднее время транзакции, которая должна быть принята в блок и добавлена в леджер (включаются только транзакции с комиссиями для майнеров).

Теперь про Ethereum. Теоретически, сеть может обрабатывать 1000 транзакций в секунду. Однако на практике ограничивается 6,7 миллионами газа в каждом блоке. Статистику можно посмотреть на Etherscan.

Газ - это плата за вычислительные усилия, которые потребуются для решения смарт-контракта

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

Время достижения консенсуса

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

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

Когда нет центрального органа, как все в системе узнают, что произошла определенная транзакция? Сеть передает данные от ноды к ноде: как в реальной жизни расходятся сплетни или новости от человека к человеку.

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

Это особенно относится к Ethereum, потому что в этой сети наибольшее количество нод среди всех криптовлют из-за популярности ICO.

Существующие решения масштабируемости

  • Segwit
  • Увеличение размера блока
  • Шардинг
  • Доказательство доли владения PoS
  • Оффчейн-каналы
  • Plasma

SegWit

Segwit - это сайдчейн, который идет параллельно основной цепи и содержит подписи к транзакциям. Тогда в блоке освобождается дополнительное место.

Плюсы Segwit:

  • Увеличивает количество транзакций, которые можно добавить в блок;
  • Снижает транзакционные сборы;
  • Уменьшает размер каждой отдельной транзакции;
  • Транзакции могут подтверждаться быстрее, потому что время ожидания будет уменьшаться;
  • Помогает в масштабируемости;
  • Поскольку количество транзакций в каждом блоке будет увеличиваться, может увеличить общие сборы майнеру за блок;
  • Помогает активировать
  • Устраняет проблему квадратичного хеширования (проблема от увеличения размера блока, когда, например, в 2 раза больше транзакций -> в 2 раза больше подписей, что еще увеличивает время транзакции).

Минусы Segwit:

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

Увеличение размера блока

Раз проблема биткоина и эфириум в ограничении размера блока, почему бы просто не увеличить его? Изначально, BTC не должен был иметь блок в 1 Мб, но Сатоши Накамото установил ограничение, чтобы сеть не погрязла в спам-транзакциях.

Реализация увеличенного блока породила много дебатов в сообществе биткоина. Аргументы разных сторон таковы.

Против увеличения размера блока:

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

Аргументы за увеличения размера блока:

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

Увеличение размера блока было также рассмотрено для Ethereum, но из-за многих причин сообщество отказывается от этого:

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

Proof Of Stake

Сейчас одна из самых важных вещей - это переход Эфириума от PoW к PoS.

Для перехода к PoS в сети будет постепенно реализовываться . Среди плюсов, кратко назовем:

  • Снижает затраты на майнинг, более экологично.
  • Нет преимуществ у ASIC, у кого хватило денег на лучшее оборудование.
  • Снижает вероятность атаки 51%.
  • Делает невыгодным мошенничество при подтверждении.
  • Ускоряет создание новых блоков и всего процесса.

У POS-майнеров не будет платы за блок, они могут зарабатывать только за транзакционные сборы. Это стимулирует их увеличить размер блока, чтобы получить больше транзакций (посредством управления газом).

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

Однако весь этот переход не лишен проблем. Одно из самых больших опасений - майнеры могут сделать форк до IceAge.

Sharding / Шардинг

Самая большая проблема, с которой сталкивается Ethereum, - скорость проверки транзакций. Каждый полный узел в сети должен загружать и сохранять целый блокчейн.

Шардинг разбивает транзакцию на части и распространяет ее по сети. Узлы работают на отдельных частях. Это уменьшает общее время проведения транзакции. Блоки связываются через особый протокол.

Блок перед шардингом выглядит так: заголовок и тело с транзакциями. Корень Меркля всех транзакций будет в заголовке блока.

Изначально блокчейн создавался в одном уровне взаимодействия: от блока к блоку (один блок связывается с другим и так далее). Шардинг предполагает два уровня взаимодействия.

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

Второй уровень: простой блокчейн, которая принимает транзакционные группы, а не транзакции.

Проблемы внедрения шардинга:

  • Должен быть механизм, чтобы знать, какой узел обрабатывает каждый «осколок». Нужен безопасный и эффективный способ обеспечить параллелизма и безопасности.
  • Согласно Владу Замфиру (ответственный за Casper в Ethereum), в системе PoS это осуществить легче.
  • Если одна конкретная транзакция разбивается на осколки и распределяется по узлу А и узлу В, то узел А должен будет придумать какой-то механизм доказательства, что обработка завершена.

Оффчейн-каналы

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

Каковы требования для создания нового канала вне сети?

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

Plasma Ethereum

Это новый слой архитектуры Ethereum: сначала lightning, затем plasma и последним сам блокчейн.

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

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

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

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

Могут ли эти варианты решить проблему масштабируемости? Еще увидим.