Bitcoin-Qt

Bitcoin-Qt — название графического клиента Bitcoin, использовавшееся с версии 0.5.0 до переименования программы в Bitcoin Core в версии 0.9.0. Это не отдельный современный кошелёк: в новых выпусках Bitcoin Core графическое приложение по-прежнему называется bitcoin-qt.[1][2]
История названия
Сатоши Накамото выпустил исходную программу Bitcoin в 2009 году. Интерфейс на Qt появился в версии 0.5.0 в ноябре 2011 года и заменил wxWidgets; в тот период пакет назывался Bitcoin-Qt.[1] В версии 0.9.0 было принято название Bitcoin Core, чтобы отличить программный проект от сети и валюты.[2] Имя bitcoin-qt сохранилось у графического приложения, а bitcoind обозначает службу без графического интерфейса.
Два важных изменения названия связаны с конкретными датами выпусков: Bitcoin-Qt 0.5.0 был анонсирован 21 ноября 2011 года, а Bitcoin Core 0.9.0 — 19 марта 2014 года. В последнем выпуске RPC-клиент также был выделен в bitcoin-cli. Эти изменения касались программного проекта: переименование не создало новую валюту и не потребовало нового баланса биткоинов.[3][4]
Современная функция
Bitcoin Core — открытое ПО, включающее полностью проверяющий узел Bitcoin и необязательный кошелёк. Узел самостоятельно проверяет блоки и транзакции и передаёт корректные данные другим участникам. Поэтому первичная синхронизация требует значительных ресурсов. Режим pruning уменьшает объём хранимых блоков, но не превращает Bitcoin Core в лёгкий клиент.[5][6]
Узел и кошелёк выполняют разные задачи. Узел может проверять и передавать данные Bitcoin, не храня закрытые ключи и не расходуя монеты. Начиная с версии 0.21 Bitcoin Core больше не создаёт кошелёк по умолчанию автоматически; пользователи могут отдельно создавать или открывать кошельки через графический интерфейс.[7]
Bitcoin Core не является «официальным клиентом» под управлением Bitcoin Foundation. Любой желающий может предложить, проверить или протестировать изменение. Сопровождающие объединяют прошедшие публичное рецензирование исправления, а пользователи сами выбирают ПО и правила.[8]
Программы и архитектура
Bitcoin Core распространяется как набор связанных программ, а не только как настольный кошелёк. bitcoin-qt объединяет узел, кошелёк и графический интерфейс; bitcoind запускает узел и кошелёк как фоновую службу; bitcoin-cli отправляет RPC-запросы работающему экземпляру. В комплект входят также bitcoin-tx для работы с транзакциями, bitcoin-wallet для обслуживания кошельков и другие утилиты.[9]
Графическое приложение не заменяет механизм проверки. Оно показывает состояние узла, соединения, синхронизацию и историю, а также позволяет отправлять и получать средства, выбирать комиссию и управлять кошельками. На системах без рабочего стола часто используют bitcoind.
В версии 30.0 появилась команда bitcoin, которая перенаправляет вызовы существующим программам: bitcoin gui вызывает bitcoin-qt, bitcoin node вызывает bitcoind, а bitcoin rpc вызывает bitcoin-cli с именованными аргументами. В примечаниях к выпуску прямо указано, что прямые команды сохраняются. При запуске графического приложения запускаются и функции его узла; отдельный процесс bitcoind только для использования графического интерфейса не нужен.[10][11]
Набор инструментов Qt продолжил развиваться после переименования проекта. В Bitcoin Core 30.0 графический интерфейс перешёл с Qt 5 на Qt 6, а в примечаниях к выпуску 31.0 описано обновление до Qt 6.8. Поэтому название исполняемого файла bitcoin-qt не означает, что программа по-прежнему является старым клиентом 2011 года.[10][12]
Проверка, синхронизация и pruning
Новый узел загружает блоки и самостоятельно проверяет доказательство работы, структуру транзакций и применимые правила консенсуса. База chainstate хранит набор неизрасходованных выходов, необходимый для проверки следующих транзакций. Независимая верификация уменьшает зависимость от сторонних серверов, но требует времени, трафика и места на диске.[9]
Режим pruning, появившийся в Bitcoin Core 0.11, позволяет полностью проверяющему узлу удалять старые файлы блоков и отмены после построения индекса и набора UTXO. Он сокращает хранение, но не пропускает проверку. Операции, которым нужны старые блоки, включая некоторые повторные сканирования и исторические запросы, могут быть ограничены; позднее была добавлена работа кошелька в этом режиме.[13][14]
Кошельки и транзакции
Кошелёк отслеживает ключи или правила подписи и доступные ему выходы. Показанный баланс — сумма одного или нескольких неизрасходованных выходов транзакций (UTXO), а не одно число, записанное на адресе. Если выбранные UTXO превышают платёж с комиссией, транзакция обычно создаёт выход сдачи на контролируемый кошельком скрипт. Сдача не является второй комиссией или потерянным переводом на чужой адрес.[15]
Старые примеры настройки также могут сохраняться после изменения описываемых ими интерфейсов. В Bitcoin Core 31.0 удалили параметр запуска paytxfee и RPC settxfee после того, как они были объявлены устаревшими в 30.0. Примечания к выпуску рекомендуют использовать оценку комиссий или ставки комиссии для конкретных транзакций, поэтому старые примеры настройки комиссий Bitcoin-Qt следует проверять с учётом используемой версии.[12]
Генерация адресов и сдачи объясняет важность резервных копий и управления ключами. Современные кошельки выводят множество скриптов получения и сдачи из сохранённых дескрипторов. Активную базу кошелька опасно копировать как обычный файл; документация рекомендует штатную функцию backup, согласующую состояние базы во время копирования.[9]
Данные блокчейна и кошелёк служат разным целям. Повторная загрузка блоков не заменяет утраченные закрытые ключи. Документированная функция Backup Wallet или RPC backupwallet создаёт согласованную резервную копию базы данных. Шифрование кошелька защищает закрытые ключи, но не скрывает историю транзакций или метаданные открытых ключей и не позволяет восстановить забытую парольную фразу. Документация по управлению кошельком требует создавать новую резервную копию после шифрования и после миграции; копии следует защищать как конфиденциальные данные кошелька.[7][11]
Устаревшие кошельки и миграция
Bitcoin Core 0.15 добавил поддержку нескольких кошельков. Дескрипторные кошельки экспериментально появились в 0.21, стали стандартом для новых кошельков в 23.0 и заменили устаревшие кошельки Berkeley DB в 30.0. Дескрипторы явно описывают отслеживаемые скрипты и ключи и используют SQLite. Поэтому многие старые инструкции Bitcoin-Qt по резервированию, импорту и восстановлению относятся лишь к определённым версиям.[16][17][18][19]
Начиная с версии 30.0 устаревшие кошельки Berkeley DB больше нельзя создавать или загружать для обычного использования, хотя миграция на кошельки с дескрипторами остаётся доступной. В версии 26.0 появилась возможность миграции через графический интерфейс. Помимо основного кошелька с дескрипторами, при миграции могут создаваться отдельные кошельки только для наблюдения или кошельки с разрешимыми скриптами. Проект описывает преобразование как выполняемое по мере возможностей: необычные конфигурации скриптов могут потребовать дополнительного внимания. При этом сохраняется резервная копия устаревшего кошелька, а для полученных кошельков требуются новые резервные копии. Одно лишь старое имя файла wallet.dat не позволяет определить формат его базы данных или необходимый способ восстановления.[10][20][7][11]
Кошельки для наблюдения и внешнее подписание
Кошелёк, наблюдающий за открытыми ключами или скриптами, может отслеживать соответствующие платежи без закрытых ключей, необходимых для их расходования. Внешнее подписание отделяет подготовку транзакции от её подписания: в Bitcoin Core 22.0 появилась экспериментальная поддержка внешних подписантов в графическом интерфейсе, включая аппаратные кошельки, с помощью отдельно установленного инструмента, например HWI. Поддержка зависит от инструмента, устройства и версии программного обеспечения; совместимость со всеми аппаратными кошельками не гарантируется. Проект также поддерживает частично подписанные транзакции Bitcoin (PSBT) — формат, позволяющий нескольким программам обмениваться транзакцией при сборе информации и подписей, необходимых для её завершения.[21][22]
Загрузка и безопасность
Актуальное ПО следует получать у проекта Bitcoin Core, а не с сайтов или зеркал, предлагающих «Bitcoin-Qt». На официальной странице опубликованы SHA-256-суммы, подписи и инструкции проверки.[23] Пользователь отвечает за резервное копирование кошелька и защиту компьютера от вредоносных программ. Старые инструкции Bitcoin-Qt могут быть устаревшими.
В январском уведомлении проекта за 2026 год была описана конкретная ошибка миграции в Bitcoin Core 30.0 и 30.1: при редких условиях сбоя, связанных с устаревшим wallet.dat по умолчанию без имени, миграция через графический интерфейс или RPC могла удалить файлы в каталоге кошелька и привести к потере средств. Согласно уведомлению, пользователи, не пытавшиеся выполнить миграцию, не были затронуты. Затронутые бинарные файлы были отозваны, а в примечаниях к выпуску 30.2 указано исправление. Поэтому старые инструкции по миграции с использованием 30.0 или 30.1 небезопасны; предупреждение касается этих способов миграции, а не любого использования Bitcoin Core или любой последующей миграции.[24][25]
Источники
- ↑ 1,0 1,1 Bitcoin Core version 0.5.0 released, Bitcoin.org, 21 ноября 2011 года.
- ↑ 2,0 2,1 Bitcoin Core version 0.9.0 released, Bitcoin.org, 19 марта 2014 года.
- ↑ Bitcoin-Qt 0.5.0 release announcement, checked 27 October 2026
- ↑ Bitcoin Core 0.9.0 release notes: rebranding and bitcoin-cli, checked 27 October 2026
- ↑ About Bitcoin Core, Bitcoin Core, дата обращения: 28 августа 2026 года.
- ↑ Bitcoin Core wallet overview, Bitcoin.org, дата обращения: 28 августа 2026 года.
- ↑ 7,0 7,1 7,2 Bitcoin Core v31.0: Managing the Wallet, checked 27 October 2026
- ↑ Contributing to Bitcoin Core, репозиторий Bitcoin Core, дата обращения: 28 августа 2026 года.
- ↑ 9,0 9,1 9,2 Bitcoin Core file system and installed files, репозиторий Bitcoin Core, дата обращения: 28 августа 2026 года.
- ↑ 10,0 10,1 10,2 Bitcoin Core 30.0 release notes: GUI, programs and wallet changes, checked 27 October 2026
- ↑ 11,0 11,1 11,2 Bitcoin Core v31.0: File system and installed files, checked 27 October 2026
- ↑ 12,0 12,1 Bitcoin Core 31.0 release notes, checked 27 October 2026
- ↑ Bitcoin Core 0.11.0 release notes, Bitcoin Core.
- ↑ Bitcoin Core 0.12.0 release notes, Bitcoin Core.
- ↑ Transactions, Bitcoin Developer Guide.
- ↑ Bitcoin Core 0.15.0 release notes, Bitcoin Core.
- ↑ Bitcoin Core 0.21.0 release notes, Bitcoin Core.
- ↑ Bitcoin Core 23.0 release notes, Bitcoin Core.
- ↑ Bitcoin Core 30.0 release notes, Bitcoin Core.
- ↑ Bitcoin Core 26.0 release notes: GUI wallet migration, checked 27 October 2026
- ↑ Bitcoin Core 22.0 release notes: external signers, checked 27 October 2026
- ↑ Bitcoin Core 0.18.0 release notes: PSBT interface, checked 27 October 2026
- ↑ Download Bitcoin Core, Bitcoin Core, дата обращения: 28 августа 2026 года.
- ↑ Bitcoin Core: Wallet migration failure in 30.0 and 30.1, January 2026, checked 27 October 2026
- ↑ Bitcoin Core 30.2 release notes: wallet migration fixes, checked 27 October 2026