Litecoin Core version 0.21.5.8 is now available from:
https://download.litecoin.org/litecoin-0.21.5.8/.
This is a maintenance release that improves MWEB validation, transaction relay,
mining, and resource management. Upgrading is strongly recommended for all
users, especially miners, pools, exchanges, and MWEB service operators.
This release also includes changes from v0.21.5.7, which was prepared
as an important security fix and distributed only to mining pools rather than
being publicly released.
Please report bugs using the issue tracker at GitHub:
https://github.com/litecoin-project/litecoin/issues
Notable changes
Consensus change
At mainnet height 3,172,640, nodes running 0.21.5.7 will reject an MWEB
block containing a kernel that signals extra data while carrying an empty
extra-data payload. This is a soft-forking consensus rule.
Valid wallets and miners do not create this encoding. All miners and pools must
upgrade before activation to avoid producing blocks that upgraded nodes will
reject.
MWEB validation and relay
- Revalidate the complete MWEB extension block immediately before connecting
it to chainstate, including blocks reloaded from disk during reorganization
and crash recovery. This ensures the signatures, proofs, roots, and peg
commitments are checked on the same body that is applied (b4313c3). - Reject kernels that signal extra data but carry an empty extra-data payload
once the consensus rule below activates (a399fc4,b4313c3). - Improve handling of invalid MWEB block variants so that a valid block with
the same hash can still be processed (70ea696). - Defer fast relay of MWEB blocks until they have successfully connected to
chainstate, and serialize block storage and activation to keep the stored
and connected block bodies consistent (0cb1419). - Improve rejection-cache handling so that rejected MWEB transaction variants
do not prevent subsequent relay of valid transactions (c07d622).
Mining and mempool
- Validate staged MWEB transaction aggregates incrementally during block
construction, rejecting duplicate kernels and incompatible aggregate sums
while avoiding repeated validation of all staged transactions (f6afd26). - Remove MWEB transactions that conflict with newly connected blocks, along
with affected descendants, while preserving descendants whose parent outputs
remain available (36f0645).
Resource management and networking
- Release temporary cryptographic workspace when range-proof verification
rejects invalid proofs (d7ab03d). - Fix file-descriptor cleanup during POSIX file copies used by MWEB leafset
storage, including failed copies (b8ccaf3). - Update the LitecoinPool DNS seed to
dnsseed.ltcpool.org(63ba41f).
Additional fixes
- Preserve the MWEB pegout flag in transaction undo data (
22a9162). - Keep precomputed transaction data alive until queued script checks finish
during block validation (3241370). - Do not return MWEB-only mempool entries to RPC clients that request the legacy
serialization format (d3b9ac3).
Tests
- Added regression coverage for disk-reloaded MWEB bodies with invalid kernel
signatures, kernel roots, and peg-in identities, including checks that a
rejected body does not modify MWEB state. - Expanded regression coverage for MWEB block validation and relay, transaction
rejection handling, aggregate block construction, mempool conflict removal,
range-proof workspace cleanup, and leafset file-descriptor cleanup.
Checksums
129f55defb9045d5635566382c7b9f6fd227d4106a6fc07847a38b25ff9b29a1 litecoin-0.21.5.8-aarch64-linux-gnu.tar.gz
e941142c0d2fcf981029f139f73769ce7cae3c3a86898efa0cb5e9b55a18c94f litecoin-0.21.5.8-arm-linux-gnueabihf.tar.gz
6ea3b94379be34239a521b410260dc92b1fed0e436c2ffb1b72a5065ed5db5c1 litecoin-0.21.5.8-osx.dmg
32fda6b90dba7103073486e63d01c39c7586ceabe0ce06672e756e3be957be3b litecoin-0.21.5.8-osx64.tar.gz
9122755a15b4da700130978d55fc6162dfda0cb2b14fe9bf93e631b4036a7864 litecoin-0.21.5.8-riscv64-linux-gnu.tar.gz
788671ceef824b8939cd4f7913def63098c6caacf93e5e8d03c215780c905f0f litecoin-0.21.5.8-win64-setup.exe
78593091ef3545a2f06335d5f9ac5137a59e258d17e978951db693083b294109 litecoin-0.21.5.8-win64.zip
43200c9f9d65ebc126ea5833ca9429e144c4b3273da6bb9f4e89fd7450ab1be9 litecoin-0.21.5.8-x86_64-linux-gnu.tar.gz
5c38653b1d45fd2d3975634ce9d44161512ce7afa6586424f707bdead14a772b litecoin-0.21.5.8.tar.gz
Credits
Thanks to everyone who directly contributed to this release: