Промежуточные релизы (minor release) клиента Bitcoin Core обычно не содержат существенных нововведений и исправлений. На фоне отмены SegWit2x, взлета Bitcoin Cash и падения биткоина с исторического максимума, выход релиза Bitcoin Core 0.15.1, прошедший 11 ноября, остался практически незамеченным. Итак, что нового появилось в этой версии?
Существенные изменения в версии Bitcoin Core 0.15.1
Команда Bitcoin Core в последнее время наибольшее внимание уделяет ускорению первичной синхронизации узла и оптимизации распространения блоков по сети. Также, в 0.15.1 были введены меры безопасности против форков блокчейна и "неправильного поведения" пиров.
-
Блоки из цепочки с меньшей суммарной PoW обрабатываться не будут, что сэкономит ресурсы узла. Пиры, распространяющие такие блоки, будут принудительно отключаться. Для исходящих соединений будет проверяться максимальная суммарная сложность цепочки пира, и если она меньше имеющейся на локальном узле, такие пиры будут блокироваться на 20 минут с отправкой запроса на синхронизацию заголовков блоков. Если пир не сможет предоставить достаточно длинную по сложности цепочку, он будет отключен. Также будут проводится периодические проверки подключенных пиров.
-
Отключение лимита размера блока. Теперь максимальный размер блока будет ограничиваться только функцией blockmaxweight, рассчитывыющей "вес", а не размер блока, согдасно спецификации SegWit. Эта функция была введена в версии 0.13.0, в которой была добавлена поддержка SegWit. Старая функция контроля размера блока blockmaxsize останется в виде необязательной опции. В обсновном это исправление предназначено для майнеров, так как старый метод замедлял формирование блока.
-
Резервная копия настроек GUI. Теперь при каждой очистке настроек графического интерфейса клиента будет создаваться файл guisettings.ini.bak, с помощью которого можно будет восстановить прежние настройки.
-
Запрет одновременной загрузки двух файлов кошельков. Ранее возможно было запустить две копии одного кошелька в одной инсталляции Bitcoin Core путем копирования файла wallet.dat. Теперь эта схема работать не будет.
Изменение команд RPC
Также были изменены некоторые команды RPC-интерфейса кошелька:
-
Из вывода команды getmininginfo была убрана строка currentblocksize
-
Команда dumpwallet больше не перезаписывает одноименные файлы.
-
Команда backupwallet будет выдавать ошибку при попытке сохранения поверх исходного файла
-
Команда listsinceblock будет выдавать ошибку при неверном хэше блока вместо отображения всех транзакций кошелька.
Также было внесено множество небольших исправлений. С полным их списком можно ознакомиться на bitcoin.org.
В версии 0.15.1 многие пользователи ожидали обновлений, связанных с SegWit, в том числе автоматическое создание адресов сдачи в формате SegWit и добавление поддержки технологии в графический интерфейс. Однако, этого сделано не было, следовательно пользователям, которые хотят полноценно использовать SegWit, придется осваивать raw-транзакции, переходить на другие кошельки или подождать еще несколько месяцев.