Этот год для криптовалютного мира был богат на всевозможные скандалы. Но под самую «елку» всех решил удивить Bitcoin Private. Эксперты нашли в блокчейне криптовалюты скрыто добытых монет на $3,5 млн. Команда проекта утверждает, что во всем виноват один таинственный разработчик.

Bitcoin Private – гибридная криптовалюта, которая появилась в результате скрещивания «классического» биткоина и ZClassic. Ее разработчики определили максимальное количество монет в системе на уровне 21 млн BTCP. И все бы ничего, но эксперты с CoinMetrics обнаружили, что в блокчейне появились дополнительные 2 млн монет, скрытых от посторонних глаз. В нынешних ценах это примерно $3,5 млн. При этом 300 000 BTCP уже успели перевести на кошельки бирж.

По утверждению CoinMetrics, объяснить появление этих монет можно несколькими способами. Первое заключается в том, что статистические данные блокчейна Bitcoin Private неверны из-за бага в изначальном коде. Но BTCP перенял код от традиционного Bitcoin. Соответственно, если там был баг, он должен был бы отображаться в блокчейне его «предка» и остальных форков, чего ранее не замечалось.

Второе возможное объяснение – награда майнеров BTCP увеличилась после форка. Но такого также не было.

Еще есть вариант, что протокол zk-Shark, который Bitcoin Private унаследовал от ZClassic, был «поломан». Если бы это было правдой, то баг бы уже нашли.

Потому произошедшему есть только одно логическое объяснение – кто-то тайно добыл эти монеты. Компания «пошла по следу» и определила, что в блоках от 274 590 до 275 017 содержалось большее количество монет, чем заявлено в white paper BTCP. И это «больше» как раз составляет 2,04 млн Bitcoin Private.

Кто точно занимался скрытым майнингом – CoinMetrics определить не смогла, как и точный адрес где «спрятаны» монеты. BTCP перенял от ZClassic защищенные транзакции, которые скрывают данные пользователей от посторонних глаз. Тем не менее, они отображаются в защищенном пуле, где видно, что кто-то переслал криптовалюту 29 апреля 2018 года. Дальше – больше. Компания смогла определить, что с 11 июля по 18 августа 300 000 BTCP покинули защищенный пул и отправились на биржи.

Математика не врет
На следующий день после публикации исследования CoinMetrics, разработчики Bitcoin Private прокомментировали ситуацию. По их утверждению, подсчеты и выводы CoinMetrics математически верны, а сама команда даже и не знала о существовании дополнительных 2,04 млн монет.

По данным внутреннего аудита, во всем виноват сторонний разработчик, который участвовал в баунти-программе Bitcoin Private еще на стадии создания криптовалюты. Якобы, он был участником GitHub и его «повысили» до полноценного разработчика BTCP.

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

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

Как бороться
По утверждению команды Bitcoin Private, баг позволял скрыто добывать криптовалюту только на стадии форка. А потому в дальнейшем подобное не повториться.

Что же касается последующих действий, возможности довольно ограничены. Так, благодаря расследованию CoinMetrics, команда определила, что по крайней мере часть монет оказалась на бирже HitBTC. Представители Bitcoin Private уже попросили приостановить торги на этой бирже и раскрыть личность владельца. Пойдет ли на этот шаг торговая площадка – неизвестно. Также команда пообещала направить аналогичные запросы «во все биржи, если это будет необходимо, чтобы добиться правды».

Bitcoin Private предложил еще два варианта разрешения ситуации. В защищенном пуле сейчас находится примерно 1,7-1,8 млн «скрытых» монет. Кроме них там около 20 000 настоящих. Разработчики готовы провести хардфорк и уничтожить полностью все монеты. Это должно помочь решить проблему с чрезмерным предложением BTCP. Однако потенциальный злоумышленник может начать выводить свои монеты, чтобы избежать уничтожения. Тогда команде придется «откатывать» блокчейн на предыдущую версию.

Второй вариант – уничтожить более 12 млн нетронутых монет BTCP. Это также позволит решить проблему с избыточным предложением. Но «скрытые» монеты останутся.

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

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

«Технически разработчики могут заложить любую логическую бомбу в исходный код своего продукта, ведь безопасной является криптография, на которой базируется технология блокчейн. А безопасность проектов на блокчейне зависит от реализации ее разработчиками. То есть возможность или невозможность определенных операций внутри проекта обуславливается корректно написанным программным кодом. Ошибки в реализации могут быть как случайными, ведь проекты зачастую имеют сложную архитектуру, так и намеренными, с мошенническими целями», – утверждает операционный директор компании 10Guards Виталий Якушев.

Действительно, избежать на 100% багов и недоработок даже самым профессиональным разработчикам – невозможно. Но всегда можно вести свои дела прозрачно.

«Можно проводить независимые аудиты таких продуктов, как в режиме «белого ящика» (с полностью открытым исходным кодом), так и в режиме «черного ящика», если у проекта закрыт исходный код, когда проверяется работа продукта согласно техническим спецификациям white paper. Мы часто делаем такие «гибридные» аудиты – проверяем и исходный код продукта на технические уязвимости (дыры безопасности), так и проверяем бизнес-логическую составляющую на соответствие заявленным спецификациям», – утверждает Виталий Якушев.

Есть и третий путь – баг-баунти программы, когда «белые» хакеры ищут «дыры» в безопасности за определенное вознаграждение.

«Здесь есть подводные камни: если дыра безопасности в продукте позволяет «белому» хакеру заработать намного больше, чем потенциальное вознаграждение за нее, то зачастую он может «посереть», что возможно и стало с Bitcoin Private», – говорит Виталий Якушев.

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