В понедельник в новом блокчейне Bitcoin Cash Satoshi’s Vision или Bitcoin SV произошла реорганизация блоков, в результате которой транзакции на двух разных блоках были перезаписаны.
Хотя в качестве одной из возможных причин этого указывается атака злоумышленников, наиболее вероятным объяснением временной реорганизации блоков является перегрузка активности транзакций в результате запланированного стресс-теста.
Группа участников «профессионального стресс-теста Bitcoin Cash» большей частью состоит из приверженцев Bitcoin SV, пожелавших продемонстрировать «вместимость сети Bitcoin Cash» при помощи «крупнейшего теста в истории публичного блокчейна». Группа планировала отправить более 24 миллионов транзакций и понаблюдать, каким образом каждая сеть будет обрабатывать данный объем после раскола сети Bitcoin Cash в результате проведенного на прошлой неделе хардфорка. Однако, по словам разработчика Bitcoin ABC Джонатана Тумима (Jonathan Toomim), стресс-тест только усугубил раздор в блокчейне Bitcoin SV:
«Они пытались спамить и BCH, и BSV, но допустили ошибку и раскололи монеты слишком рано. В результате от спама пострадал только BSV».
Что произошло
В результате большого объема транзакций в блокчейне Bitcoin SV произошел мини-форк, который вызвал диссинхронизацию поддерживающих сеть компьютерных узлов (нод). Для восстановления узлов Bitcoin Cash SV и повторного объединения разделенных блоков в один блокчейн и потребовалась реорганизация отдельных блоков.
Реорганизации блоков (reorgs) происходят в результате консенсусного протокола Proof-of-work (PoW), контролирующего подтверждение транзакций на платформах наподобие Bitcoin и Bitcoin Cash. Поскольку PoW подразумевает расходование большого количества хэш-мощности майнерами, в стремлении добавить очередной правильный блок в блокчейн майнеры иногда предлагают новые блоки в одних временных интервалах. В этом случае время на обработку включаемых в блок транзакций и, следовательно, общего объема данных, передаваемого по сети, может увеличиться. Именно медленное перемещение блоков привело к вчерашней реорганизации двух блоков блокчейна SV.
По мнению главного научного сотрудника Bitcoin Unlimited Питера Ризуна (Peter Rizun), блоки Bitcoin SV в настоящее время перемещаются со скоростью около пяти секунд за мегабайт:
«Это очень медленно… Вероятность нахождения блока в 100-секундный интервал составляет… 15,3 процента. Обычно вероятность такого развития событий ниже 1%».
Известные сложности
Ситуацию, когда блоки на время исключаются из основной сети, Тумин назвал «сиротской гонкой». Он также добавил, что в блокчейне Bitcoin ABC задержки в передаче блоков, скорее всего, не было бы из-за меньшего размера блока в сети.
«Если бы такой тест был проведен с Bitcoin ABC, блокчейн Bitcoin ABC имел бы примерно такую же пропускную способность, однако из-за наличия ограничений в пространстве лишние транзакции были бы либо отложены, либо игнорированы», - объяснил он.
Отметим, что проблема масштабирования объема транзакций в больших блоках обсуждается в сообществе Bitcoin Cash с начала августа. Ризун считает, что ничего «неожиданного не произошло»:
«[Крейг Райт] и сторонники SV не верили словам ученых и инженеров о существующих ограничениях масштабирования».
Очередные обещания
Тем не менее, часть наблюдателей раскола Bitcoin Cash назвали ограничения в сети Bitcoin SV результатом спама транзакций. Ведущий разработчик платформы электронной торговли OpenBazaar Крис Пасиа (Chris Pacia) предупредил, что в результате реорганизации блока «кто-то мог потерять деньги».
Он считает, что:
«Сторона ABC была твердо уверена в том, что сеть пока не может обрабатывать большие блоки, а сторона BSV опрометчиво настаивала на размере в 128МБ. Реорганизация двух блоков ясно демонстрирует правоту ABC».
Однако несмотря на критику, Райт утверждает, что недостатки вместимости сети Bitcoin SV далеко не критичны и призывает компании начать работать с новым блокчейном.
«В ближайшие годы мы планируем поддержать неограниченный размер блока и такое количество транзакций, какое люди пожелают отправить», - написал он.
Говоря о вчерашних событиях, Райт отметил, что есть «места, которые необходимо улучшить» и он знает, «что нужно делать». Кроме того, Райт отметил, что через шесть месяцев пропускная способность транзакций в сети Bitcoin SV увеличится до 2 500 транзакций в секунду.