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

Allow specifying PSBT version in constructor

Public commit record

What the developer wrote

Authored by Ava Chow

60/100 · Adequate
Allow specifying PSBT version in constructor

The constructor will create the PSBT of the specified version, as long
as it is 0 or 2.
✓ Descriptive subject✓ Names a concrete action or component✓ Provides an explanatory body
The short version

What changed, and why it matters

This change lets the PSBT constructor choose between version 0 or version 2 when creating a new Partially Signed Bitcoin Transaction. It also fixes a small consistency bug in the joinpsbts RPC where newly created PSBTs during joining/shuffling were always version 0, even when the inputs being joined were version 2. There is no direct evidence this is a security fix, and the new version parameter is guarded by an assertion that only allows 0 or 2.

Recommended action

No urgent action required. Treat as a normal code-quality/consistency change. Reviewers may want to confirm the assertion is sufficient and that no other RPC or wallet paths create PSBTs with hardcoded version 0 where version 2 would be expected.

Security signals we found

01

assert(m_version == 0 || m_version == 2) restricts PSBT version to known values

02

joinpsbts now preserves PSBT version across merge and shuffle steps

03

No input validation bypass, overflow, or unsafe serialization changes visible

Risk score

Why this scored 19/100

Our methodology →
Potential impact 2/30
Exploitability 1/25
Stealth signal 1/15
Affected reach 3/15
Confidence 8/10
Evidence quality 4/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.