Разработчики проекта децентрализованного сервера доменных имен (DNS) Handshake недавно исправили ошибку, которая могла привести к увеличению предложения криптоактива HNS.
Согласно статье в блоге разработчиков Handshake, команда проекта устранила ошибку в коде протокола. Ошибка никогда не была использована злоумышленниками, а данные домена не были скомпрометированы.
«В протоколе Handshake была обнаружена ошибка, которая могла привести к непреднамеренному увеличению общего количества HNS сверх установленных пределов», – говорится в статье. «Пользователь с заявкой на зарезервированное имя мог случайно получить небольшое количество дополнительных HNS при внесении изменений в свой кошелек. В худшем случае злонамеренный майнер мог генерировать почти неограниченное количество дополнительных HNS в каждом блоке. Ошибка никогда не использовалась злоумышленниками и теперь исправлена».
Команда проекта советует майнерам и операторам узлов как можно скорее выполнить обновление до последней версии. Handshake – это децентрализованная служба доменных имен, в которой пользователи могут приобретать имена Handshake – альтернативу идентификаторам DNS, традиционно используемым для доступа к веб-сайтам (пользователи Handshake платят за них в HNS). Согласно статье в блоге, ошибка дала бы пользователям, которые предъявляли права на имена Handshake, возможность случайно создать дополнительные HNS.
Бывший разработчик BitGo Мэтью Зипкин (Matthew Zipkin) предупредил команду Handshake об уязвимости 24 марта. Разработчик Handshake и архитектор Lightning Network Джозеф Пун (Joseph Poon) и его коллега, разработчик Handshake Кристофер Джеффри (Christopher Jeffrey) закодировали исправления, которые были сначала развернуты в майнинговых пулах HNS. Команда проекта сначала обратилась к пулам F2Pool и Poolin, потому что ошибка потребовала пересмотра кода Handshake.
«Это проблема – не просто ошибка реализации, которую можно устранить с помощью программного исправления. Это проблема с дизайном протокола Handshake, и она влияет на каждого пользователя и все полные узлы. Единственный способ решить эту проблему – использовать софтфорк, который добавляет новые правила в протокол и применяется майнерами», – заявили разработчики протокола.
Команда Handshake выполнила экстренный софтфорк, потому что «уязвимость не могла быть раскрыта до тех пор, пока не были введены новые правила протокола, поддерживаемые максимальным хешрейтом».
Напомним, что в феврале разработчик Bitcoin Core раскрыл информацию об уязвимости в более ранних версиях программного клиента. Ошибка была устранена в релизе Bitcoin Core 0.19.