Repository navigation
v1.8.2
Pre-release
Pre-release
A mempool denial-of-service fix and faster verification of mixed shielded and transparent blocks. We recommend upgrading.
Supported on Mainnet until block 3,643,309, around December 5, 2026. Upgrade warnings start about three days earlier.
No config changes are needed.
Highlights
- Security: the mempool now rejects transactions with unknown shielded anchors or already-spent nullifiers before sending their proofs to the verifiers that block validation shares (#1962).
- Shielded checks start before transparent ones, and partial Sapling and Orchard proof batches are flushed as soon as they're queued, so mixed blocks verify proofs alongside transparent checks (#1922, #1968).
- Committing a mined block reuses the chain state built when its template was validated as a proposal (#1963).
submitblockand other single-string JSON-RPC 2.0 calls no longer copy and re-encode their parameters (#1957).- Common 5.1.0 brings Orchard and Sapling signature verification improvements (#1964).
Full changelog
Changed
- Block verification starts shielded transaction checks before transparent ones, shortening verification of mixed blocks
(#1922). - JSON-RPC 2.0 calls with one unescaped string argument, such as
submitblock,
no longer copy and re-encode parameters before the server reads them
(#1957). - Committing a mined block now reuses the chain state the node already built when it validated
that block's template as a proposal, instead of building it a second time. Cached proposal
chains are released when their parent leaves the live state, even if proposals stop arriving
(#1963). - Updated Common dependencies to 5.1.0, bringing Orchard and Sapling signature
verification improvements
(#1964). - Block verification flushes partial Sapling and Orchard proof batches as soon as the block's shielded transactions have
queued them, instead of after every transaction has started, so mixed blocks verify their proofs alongside the
transparent checks (#1968). - Classify the accumulated compatible performance and dependency improvements as
a patch release for the node; published libraries retain their independent
API version requirements (#1971).
Security
- Reject mempool transactions with unknown shielded anchors or already-spent
nullifiers before submitting proof verification to the shared block verifiers
(#1962).
Also in CHANGELOG.md.