Завершающее тестирование Bitcoin Core 32.0: новые функции и исправления
14 сентября команда разработчиков Bitcoin Core представила первый релиз-кандидат версии v32.0rc1. В обновлении ожидается улучшение механизма расчета комиссий, ускоренная валидация блоков при чтении с диска и устранение уязвимости walletnotify. Последняя затрагивает лишь определенные конфигурации и требует аутентифицированного RPC-доступа, как указано в официальных документах и черновике примечаний к версии.
Полноценный выпуск Bitcoin Core 32.0 запланирован на 10 октября. В опубликованных примечаниях к версии не указаны изменения в правилах консенсуса биткоина, это обновление касается только клиентского ПО.
Обновленный механизм оценки комиссий учтет состояние мемпула. В новой версии Bitcoin Core 32.0 алгоритм estimatesmartfee будет учитывать не только данные подтвержденных транзакций, но и текущее состояние мемпула. По умолчанию клиент станет возвращать меньшую из двух оценок, что позволит снизить рекомендуемую комиссию после снижения нагрузки.
Пользователям будет предоставлена возможность выбрать конкретный алгоритм оценки комиссии через параметр fee_rate_estimator. Если данных для оценки будет недостаточно, например, из-за загрузки мемпула или нехватки свежих блоков, система выдаст ошибку.
В новой версии также улучшена проверка блоков благодаря добавлению параллельной предвыборки данных об использованных выходах транзакций (prevouts). По умолчанию задействовано восемь потоков, максимум — 16. Это изменение ускорит валидацию блоков, особенно когда данные считываются с диска.
Также изменен процесс создания частично подписанных биткоин-транзакций (PSBT). Команды, такие как createpsbt и walletcreatepsbt, начнут генерировать PSBT версии 2. При необходимости можно будет выбрать другую версию через аргумент psbt_version.
Кроме того, исправлена уязвимость, существовавшая с версии 24.0 Bitcoin Core. Она касалась не-Windows-систем с параметром -walletnotify и плейсхолдером %w. Аутентифицированный RPC-пользователь мог воспользоваться этой уязвимостью для выполнения дополнительных команд.
Еще одно исправление касалось безопасности нового HTTP-сервера, обнаруженное в ходе аудита Kimi K3. В определенных ситуациях клиент мог продолжать отправку данных, что увеличивало потребление памяти. Теперь сервер не будет читать новые данные, пока предыдущий запрос находится в процессе обработки.
Новый HTTP-сервер еще не использовался в предыдущих стабильных версиях Bitcoin Core, и он будет представлен в релизе 32.0 с уже внесенными исправлениями. Помимо этого, в версии 32.0 значительно сокращен дисковый объем индекса транзакций txindex, более чем вдвое после полной пересборки.
Напомним, в октябре 2025 года был выпущен Bitcoin Core v30, который увеличил лимит данных в выходах OP_RETURN с 80 до 100 000 байт.