Реализация протокола Segwit биржей Coinbase привела к исчезновению биткоинов
Прошло всего две недели с момента реализации криптовалютной биржей Coinbase протокола Segwit, как была обнаружена ошибка. Баг привел к тому, что при оплате заказа с помощью Coinbase Commerce в системе пропадают биткоины.
Вероятнее всего проблема связана с протоколом для обмена данными между продавцом и клиентом — BIP70. Coinbase, видимо, не обновила его.
Обладающий глубокими познаниями разработчик криптовалют пишет в ветке на Reddit:
«Они не обновили BIP70 для использования SegWit-адресов. В результате ваши монеты отправляются не-SegWit адресам и теряются в их отслеживающей системе»
По сути, после того как вы отправили свои биткоины, продавец не видит подтверждения, поскольку вся информация остаётся где-то в системе Coinbase.
Представители Coinbase до сих пор никак не прокомментировали происходящее, но этот малоизвестный BIP70, по-видимому, не впервые добавляет проблем.
Еще в 2016 году сообщалось о неудачных платежах из-за процесса BIP70. В то время тестировщик биткоин-продуктов Патрик Паттон описал проблему следующим образом:
«Последние несколько раз, когда он использовал запрос на платеж, полученный от Coinbase, в кошельке выскакивала фатальная ошибка процесса BIP 70, которая требовала либо вернуться к BIP 21 (это старая версия BIP 70), либо оставить все как есть без возможности обратиться за помощью».
Реализация протокола SegWit однозначно была поспешной. И причиной тому не что иное, как постоянное давление со стороны пользователей, поддерживающих Bitcoin Core. Но SegWit — сложное программное обеспечение, особенно когда дело касается сервисов обработки коммерческих платежей.
Несмотря на то, что с момента активации Segwit прошел почти год, его принятие остается на уровне 30%.
Вероятно, причина в том, что сложным организациям, обслуживающим миллионы клиентов и более 100 000 продавцов, изменения в системах необратимых денежных платежей могут дорого обойтись.
Именно поэтому испытаниям и мерам предосторожности уделяется львиная доля внимания. Но в этом случае, похоже, все оказалось слишком сложно.
Хорошая новость заключается в том, что средства не безвозвратно утеряны, а просто “болтаются” где-то в пространстве Coinbase.