Bitcoin ABC version 0.28.8 is now available from:
https://download.bitcoinabc.org/0.28.8/
This release includes the following features and fixes:
Bitcoin ABC will no longer automatically create new wallets on startup. It will
load existing wallets specified by -wallet
options on the command line or in
bitcoin.conf
or settings.json
files. And by default it will also load a
top-level unnamed (“”) wallet. However, if specified wallets don’t exist,
Bitcoin ABC will now just log warnings instead of creating new wallets with
new keys and addresses like previous releases did.
New wallets can be created through the GUI , through the bitcoin-cli createwallet
or bitcoin-wallet create
commands, or the createwallet
RPC.
To address a potential denial-of-service, the logic to download headers from peers has been reworked. This is particularly relevant for nodes starting up for the first time (or for nodes which are starting up after being offline for a long time).
Whenever headers are received from a peer that have a total chainwork that is either less than the node’s -minimumchainwork value or is sufficiently below the work at the node’s tip, a “presync” phase will begin, in which the node will download the peer’s headers and verify the cumulative work on the peer’s chain, prior to storing those headers permanently. Once that cumulative work is verified to be sufficiently high, the headers will be redownloaded from that peer and fully validated and stored.
This may result in initial headers sync taking longer for new nodes starting up for the first time, both because the headers will be downloaded twice, and because the effect of a peer disconnecting during the presync phase (or while the node’s best headers chain has less than -minimumchainwork), will result in the node needing to use the headers presync mechanism with the next peer as well.
The getpeerinfo RPC has been updated with a new presynced_headers
field, indicating
the progress on the presync phase mentioned in the “P2P and network changes” section
above.