Перейти к публикации
Tomcat_MkII

Серхио Лернер из Rootstock о квадратичных задержках в скриптах Биткоина

Рекомендованные сообщения

240417_kvadratichnie-zaderzhki-v-bitcone

 

16 апреля главный инженер Rootstock Серхио Демиан Лернер (Sergio Demian Lerner) рассказал в своем блоге, что он обнаружил ранее неизвестные квадратичные задержки в скриптах Биткоина во время исследования протокола Segregated Witness (Segwit).

 

В своем сообщении Лернер объясняет, что он начал исследовать возможности масштабирования Segwit на прошлой неделе, начав изучать код, «в особенности функцию EvalScript()». Именно тогда он обнаружил две квадратичные петли сложности в протоколе Bitcoin Core. По словам Лернера, результаты этого тестирования не должны ни у кого вызывать беспокойства, так как он считает, что существуют «гораздо более серьезные проблемы в области проверки блоков Биткоина». При этом, в своей статье он подробно описывает один из возможных сценариев атаки злоумышленников с использованием этой уязвимости.

 

«Майнер-злоумышленник может создать блок Segwit, для проверки которого потребуется примерно 10 секунд», - объясняет Лернер. «Примеры, представленные в моей записи, требуют меньше 10 секунд».

 

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

«Оптимизация необходима для предотвращения будущих проблем»

 

Лернер углубляется в описание проблемы, которую он называет отклонением OP_IF, а также проблемы «Rock-and-Roll», обнаруженной в коде операции OP_ROLL. Он также объясняет, что уже было много сделано для оптимизации процесса обработки блоков, но отмечает, что «есть несколько частей старого кода, которые по-прежнему требуют незначительной оптимизации для предотвращения сюрпризов в процессе масштабирования в будущем».

 

Читать полностью

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×