Баг двойного расходования угрожает более 50% Биткоин узлов. Что это значит для индустрии?

0
10

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

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

Баг двойного расходования угрожает более 50% Биткоин узлов. Что это значит для индустрии?

Баг инфляции по-прежнему угрожает более 50% всех полных Биткоин узлов

Большинство полных узлов BTC по-прежнему уязвимы для ошибки инфляции

8 мая журналисты Cointelegraph сообщили, что, согласно анализу Дашжра, более 50% полных узлов в сети BTC по-прежнему используют версии программного обеспечения клиента, которые подвержены ошибке инфляции.

Тем не менее, с того времени эта цифра немного снизилась – с 60% до 54%. Это означает, что в последние несколько дней программное обеспечение некоторых полных узлов было обновлено на более новое.

Еще в сентябре 2018 года разработчики обнаружили ошибку инфляции, которая теоретически может позволить майнерам увеличить общее предложение Биткоина (то есть вывести общее количество BTC за пределы 21 миллиона монет). Учитывая характер ошибки, разработчики не обнародовали ее и выпустили новую версию клиента.

Серьезность ошибки инфляции в блокчейне Биткоина

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

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

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

Двойное расходование: нормальная ситуация и реализация ошибки двойного расходования

Баг двойного расходования угрожает более 50% Биткоин узлов. Что это значит для индустрии?

А что происходит, когда злоумышленник пытается использовать использовать UTXO (Unspent Transaction Output – входящие платежи, являющиеся неизрасходованными выходами в сети Биткоина) несколько раз? Это действие будет означать создание новых монет практически из воздуха, что, в свою очередь, приведет к увеличению общего предложения монет, а значит, к инфляции. Поэтому инфляционная ошибка так важна.

В нескольких последовательных обновлениях программного обеспечения разработчики пытались улучшить защищенность BTC. Однако в версии клиентского программного обеспечения 0.14.x разработчики начали замечать, что программный клиент уязвим к распределенной атаке на отказ в обслуживании (DDoS).

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

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

Журналисты Cointelegraph спросили у аналитика о последствиях инфляционной ошибки, на что Биткоин разработчик ответил:

Инфляционная ошибка на практике представляет собой общесетевой риск. Она может позволить произвести «атаку 51%» и вызвать инфляцию. Такая «инфляционная» цепь будет принята только уязвимыми узлами и легкими кошельками.

В этом отношении ошибка делает из того, что считалось полным узлом, фактически просто легкий кошелек.

Все узлы должны быть обновлены

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

Когда представители Cointelegraph уточнили у аналитика, что можно сделать в этой ситуации, Дашжр ответил просто:

Нужно всем перейти на исправленный полный узел.

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

В 2018 году Биткоин разработчик Джимми Сонг выразил мнение, что мошенники, пытающиеся воспользоваться инфляционным багом, фактически не смогут реализовать задуманное. Например, Сонг отметил, что не на каждом полном узле работает Bitcoin Core, многие пользователи предпочитают развертывать пользовательские итерации клиента.

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

В 2010 году случился «инцидент переизбытка значения», обнаруженный в блоке 74 638, и разработчики опубликовали новое обновление клиента менее чем за пять часов, решив эту проблему. Указанный блок содержал транзакцию, которая создала около 184 миллиардов BTC для трех адресов, причем два адреса получили по 92,2 миллиарда BTC, а майнер, отвечающий за добычу блока, получил 0,01 BTC.

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

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

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

Хотите зарабатывать на крипте? Подписывайтесь на наши Telegram каналы!

ОСТАВЬТЕ ОТВЕТ

Please enter your comment!
Please enter your name here