Bitcoin Core version 28.1 is now available, offering a range of new features, important bug fixes, and performance improvements. This guide provides a comprehensive overview of the release, including upgrade instructions, compatibility details, and notable changes.
Overview of Bitcoin Core 28.1
Bitcoin Core is the primary software client for the Bitcoin network, enabling users to run a full node, validate transactions, and participate in the decentralized ecosystem. Version 28.1 continues the project's commitment to security, stability, and performance.
This release includes updates across various components, from peer-to-peer networking to internal key management. It is recommended for all users, especially those operating nodes in network-critical roles.
How to Upgrade to Bitcoin Core 28.1
If you are running an older version of Bitcoin Core, follow these steps to upgrade safely:
- Shut down your current Bitcoin Core application completely. This process might take a few minutes in some cases.
Depending on your operating system:
- Windows: Run the new installer.
- macOS: Copy the new
Bitcoin-Qtapplication to your/Applicationsdirectory. - Linux: Replace the old
bitcoindorbitcoin-qtbinaries with the new ones.
Upgrading directly from an end-of-life (EOL) version is possible. However, be aware that if a data directory migration is required, the process may take additional time. Old wallet formats are generally still supported.
Important Note for macOS Users: Running Bitcoin Core binaries on macOS now requires a self-signing step. Execute the following commands in your terminal after installation:
cd /path/to/bitcoin-28.x/bin
xattr -d com.apple.quarantine bitcoin-cli bitcoin-qt bitcoin-tx bitcoin-util bitcoin-wallet bitcoind test_bitcoin
codesign -s - bitcoin-cli bitcoin-qt bitcoin-tx bitcoin-util bitcoin-wallet bitcoind test_bitcoin👉 Explore more upgrade strategies
System Compatibility
Bitcoin Core 28.1 is officially supported and rigorously tested on the following operating systems:
- Linux distributions using kernel 3.17 or newer
- macOS 11.0 (Big Sur) and newer
- Windows 7 and newer
The software should also function on most other UNIX-like systems, though these environments are not as frequently tested. Using Bitcoin Core on unsupported systems is not recommended due to potential stability and security issues.
Notable Changes in Version 28.1
This update introduces several important modifications and fixes.
Peer-to-Peer (P2P) Networking
A significant change involves how the software handles the default onion listening port when the -port configuration option is used. Previously, it was fixed at port 8334 for the mainnet. Now, it dynamically derives the port by adding 1 to the value specified in -port.
This change resolves a startup failure that occurred in v28.0 for users running multiple local nodes with different -port values who were not using the -bind option. It prevents port collision in these multi-node setups.
Note for Advanced Users: If you have manually configured a HiddenServicePort in your torrc file, you may need to adjust it. For example, if you use -port=5555, Bitcoin Core will now listen for incoming Tor connections on 127.0.0.1:5556. Your torrc configuration must be updated to reflect this new port, or you can use the -bind option to enforce the previous behavior.
Security and Key Management
A crucial security improvement has been made in key handling. The update ensures that secret data is properly cleared from memory during the decoding process of extended keys, enhancing protection against potential memory scraping attacks.
Build System and Testing
Several fixes were applied to the build system and testing framework to improve stability across different platforms:
- Resolved a library conflict for MinGW cross-compilation by using the
-gcc-posixflag. - Fixed CXXFLAGS configuration for the NetBSD operating system.
- Added missing synchronization in test cases and resolved macro redefinition issues to ensure testing accuracy and reliability.
Documentation and Continuous Integration
Documentation has been updated to include a dedicated section header for testnet4 in the configuration file. The continuous integration (CI) pipeline has also been enhanced by adding the LLVM_SYMBOLIZER_PATH to the Valgrind fuzz job, improving debugging capabilities.
Frequently Asked Questions
What is Bitcoin Core?
Bitcoin Core is the primary, open-source software implementation that serves as a full node for the Bitcoin network. It validates transactions and blocks, enforces the network's consensus rules, and provides a wallet for storing keys.
How do I know if I need to upgrade?
If you are running a version older than 28.0, upgrading is highly recommended to benefit from the latest security patches, performance improvements, and bug fixes. This is especially important for node operators helping to secure the network.
Is my old wallet still compatible with Bitcoin Core 28.1?
Yes, old wallet versions are generally supported. You should be able to upgrade the software without any issues regarding wallet compatibility. However, it is always a best practice to have a verified backup of your wallet.dat file before any upgrade.
What should I do if I encounter a problem after upgrading?
First, consult the documentation and community forums. If you have identified a potential bug, you can report it using the official issue tracker on GitHub, as provided by the development team.
Why was the macOS self-signing requirement added?
This step is a response to evolving macOS security policies. Self-signing the binaries assures the operating system that the software has not been modified since it was published by the developers, while maintaining the open-source nature of the project.
Where can I learn more about advanced node configuration?
For those looking to optimize their node's performance or integrate with other services, numerous community resources and detailed documentation are available. 👉 Get advanced methods for node configuration
Credits and Acknowledgments
This release was made possible through the direct contributions of numerous developers, including fanquake, Hennadii Stepanov, laanwj, MarcoFalke, Martin Zumsande, Marnix, and Sebastian Falbesoner.
Special thanks also go to the global community of translators who work on Transifex to make Bitcoin Core accessible in multiple languages. Their efforts help foster a more inclusive and decentralized ecosystem.