AI-generated analysisPublished automatically and not human-verified. Validated context appears in community notes below.
← Watch feed
Low 42 Bitcoin

Liquid (taproot): add sign_liquid_tx genesis blockhash support

Public commit record

What the developer wrote

Authored by Jon Griffiths

95/100 · Strong
Liquid (taproot): add sign_liquid_tx genesis blockhash support

Allow providing the genesis blockhash for sign_liquid_tx in
addition to the already existing sign_psbt support for PSET.

For test networks, do not require that the provided genesis blockhash
matches the network genesis blockhash. This allows signing for e.g.
custom regtest environments. Ensure that test network signing cannot
use the mainnet genesis blockhash in order to prevent spoofing.

Suggested-by: topologoanatom <survisysy@gmail.com>
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context✓ Explains rationale or failure mode✓ Mentions testing or verification
The short version

What changed, and why it matters

This commit changes how Blockstream Jade handles the 'genesis blockhash' when signing Liquid transactions. Previously, the device only accepted the network's built-in genesis hash. Now it lets users provide a custom genesis hash for test networks (like regtest), but blocks attempts to use the real Liquid mainnet genesis hash on test networks to prevent spoofing. The change also applies the same validation to both PSBT/PSET signing and raw transaction signing. It appears to be a hardening/feature addition rather than a fix for an active exploit, but it does close a spoofing path on test networks.

Recommended action

Review the new params_genesis_hash() helper for off-by-one or comparison errors, ensure network_id values cannot be spoofed before validation, and verify that the cleanup path in sign_psbt.c does not leak the genesis hash from a partially signed PSET. No urgent patch is indicated, but firmware using this code should include this commit before allowing custom regtest genesis hashes.

Security signals we found

01

Adds input validation for caller-supplied genesis blockhash

02

Prevents mainnet genesis hash from being used on Liquid test networks

03

Restricts genesis_hash parameter to Liquid networks only

04

Unifies genesis blockhash handling across PSET and raw transaction signing

05

Suggested-by external contributor in commit message

Risk score

Why this scored 42/100

Our methodology →
Potential impact 12/30
Exploitability 8/25
Stealth signal 6/15
Affected reach 7/15
Confidence 6/10
Evidence quality 3/5
Human-validated context

Community notes

Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.

No validated notes yet.

The AI analysis stands alone for now. Submit a note if you can add evidence or important context.