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

bugfix: p2pk

Public commit record

What the developer wrote

Authored by scgbckbone

18/100 · Opaque
bugfix: p2pk
✓ Subject identifies a change! Too few words to establish purpose! No meaningful explanatory body! Opaque security-relevant change
The short version

What changed, and why it matters

This commit fixes a bug in the COLDCARD hardware wallet that prevented it from correctly signing Bitcoin transactions that spend from 'pay-to-public-key' (P2PK) outputs. P2PK is an older, uncommon output type where coins are locked directly to a public key rather than to a Bitcoin address. The bug meant P2PK signing was broken entirely, and the device could not handle both compressed (33-byte) and uncompressed (65-byte) public key forms. The fix updates the firmware to recognize both key lengths, compare them correctly against derived keys, and produce the right transaction signature format. It also adds tests that exercise real P2PK spends against Bitcoin Core.

Recommended action

Treat this as a legitimate bug-fix commit with security relevance for users holding funds in P2PK outputs. Verify the new tests pass and consider whether any prior firmware versions need a backport or advisory note for users unable to spend P2PK UTXOs. No independent exploit is evident, but the broken signing path could have locked user funds or forced use of less secure workarounds.

Security signals we found

01

Bugfix explicitly described in release notes as 'P2PK signing was broken'

02

P2PK scriptPubKey parsing now supports both compressed and uncompressed public keys

03

Pubkey comparison logic corrected for uncompressed P2PK keys

04

scriptSig construction differentiated between P2PK and P2PKH to avoid invalid signatures

05

Change-output fraud check updated to handle 65-byte P2PK pubkeys

06

New regression tests cover real Bitcoin Core P2PK spends and malformed change-output handling

Risk score

Why this scored 57/100

Our methodology →
Potential impact 18/30
Exploitability 12/25
Stealth signal 8/15
Affected reach 7/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.