Bitcoin Core 32.0 вышел в финальное тестирование перед релизом 10 октября

Разработчики Bitcoin Core опубликовали первый релиз-кандидат версии 32.0 — v32.0rc1. Изменения касаются оценки комиссий, скорости валидации блоков и двух исправлений безопасности. Изменений правил консенсуса в релизе нет, обновление затрагивает только клиентское ПО.
14 сентября команда Bitcoin Core выложила первый релиз-кандидат v32.0rc1. По официальному графику стабильную версию 32.0 планируют выпустить 10 октября. В черновике примечаний к релизу изменений правил консенсуса биткоина нет — обновляется только клиентское ПО.
Оценщик комиссий начнет смотреть на мемпул
Механизм estimatesmartfee, который подбирает комиссию для подтверждения транзакции за заданное число блоков, будет работать иначе. Сейчас он опирается на оценщик block_policy, построенный по уже подтвержденным транзакциям. В версии 32.0 к нему добавят mempool_policy, анализирующий текущее состояние мемпула.
По умолчанию клиент задействует оба алгоритма и вернет меньшую из оценок. Это позволит снизить рекомендованную комиссию после спада нагрузки, но не поднять ее выше результата block_policy. Выбрать конкретный алгоритм можно параметром fee_rate_estimator. Если у нового оценщика не хватает данных — например, мемпул еще загружается, свежих блоков получено мало или его состояние признано непригодным для надежной оценки, — он вернет ошибку.
Кроме этого, добавлена параллельная предвыборка данных об использованных выходах транзакций (prevouts) при проверке блоков. По умолчанию работают восемь потоков, максимум — 16, параметр -prevoutfetchthreads=0 отключает функцию. Ускорение будет заметнее там, где данные приходится читать с диска; если они уже в оперативной памяти, эффект меньше.
Частично подписанные транзакции (PSBT) тоже изменились: команды createpsbt, walletcreatepsbt, converttopsbt и psbtbumpfee по умолчанию создают PSBT версии 2. Другую версию можно указать аргументом psbt_version.
Уязвимость walletnotify закрыта спустя восемь версий
В 32.0 исправлена уязвимость, которая присутствовала в клиенте начиная с версии 24.0. Она затрагивала не-Windows-системы при использовании параметра -walletnotify с плейсхолдером %w — эта настройка запускает заданную оператором команду при появлении транзакции, связанной с кошельком.
Аутентифицированный RPC-пользователь с правом создавать кошельки мог задать специально сформированное имя. При последующем уведомлении о транзакции символы в названии нарушали экранирование оболочки и при подходящем шаблоне walletnotify позволяли выполнить дополнительную команду от имени процесса Bitcoin Core. Причина в том, что функция ReplaceAll() передавала экранированное имя кошелька в std::regex_replace() как текст замены. Разработчики переписали механизм так, чтобы название обрабатывалось буквально.
Через обычное P2P-соединение или без авторизации уязвимость не эксплуатировалась. Для атаки одновременно нужны RPC-доступ с правом создания кошельков, настроенный walletnotify с %w и операционная система, отличная от Windows.
HTTP-сервер ограничили в чтении данных
В ветку 32.0 вошло исправление еще одной проблемы безопасности, найденной при аудите нового HTTP-сервера. Если сервер уже обрабатывал запрос, клиент мог продолжать слать данные без ограничения объема, что при определенных условиях позволяло бесконтрольно наращивать потребление памяти процессом. Теперь сервер не читает новые данные из сокета, пока не закончит с предыдущим запросом, а входящий поток ограничивают механизмы TCP. Для наиболее реалистичного сценария эксплуатации требовался аутентифицированный клиент.
Новый HTTP-сервер в предыдущих стабильных версиях Bitcoin Core не использовался — он войдет в релиз 32.0 уже с исправлением, так что узлы на прежних официальных версиях эта проблема не затрагивала.
Также версия 32.0 сократит дисковый объем индекса транзакций txindex более чем вдвое — но только после полной пересборки. Существующие индексы остаются совместимыми, для экономии места их придется создать заново.
В октябре 2025 года разработчики выпустили Bitcoin Core v30: среди ключевых изменений было увеличение лимита данных в выходах OP_RETURN по умолчанию с 80 до 100 000 байт.
ForkLog · права на исходный материал принадлежат автору.
Материал носит информационный характер и не является индивидуальной инвестиционной рекомендацией. Операции с криптовалютами связаны с риском полной потери вложенных средств. Подробнее — «Отказ от ответственности».
Разборы событий, итоги дня и то, что двигает рынок. Без сигналов и обещаний — только факты и что они значат.
Читать в Telegram →По теме
- ▪Дуров анонсировал встроенный в Telegram некастодиальный кошелёк GramКриптовалюта.Tech · 25 сентября
- ▪Открытый интерес по фьючерсу на золото на Hyperliquid достиг $309 млнHappyCoin · 25 сентября
- ▪Разработчики предложили Shielded Bitcoin для приватных переводов без софтфоркаForkLog · 25 сентября
- ▪Circle и Alpen Labs интегрируют USDC в биткоин-сетьForkLog · 25 сентября