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

feat(core): sign messages at an export point under any script type

Public commit record

What the developer wrote

Authored by Petr Susil

85/100 · Strong
feat(core): sign messages at an export point under any script type

Signing a message failed unless the host sent the script type matching the
path. Any script type a message can be signed with is now accepted.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Uses a recognizable type or scope✓ Provides detailed explanatory context
The short version

What changed, and why it matters

This commit relaxes a security check in Trezor's Bitcoin message-signing feature. Previously, the device required the host's chosen script type (for example, legacy, SegWit, or native SegWit) to match the exact BIP-32 derivation path. Now, any supported script type is accepted as long as the path reaches a valid 'export point' for one of those script types. The change is described as a feature, not a bug fix, and the tests were rewritten to expect signing to succeed in cases that were previously forbidden or warned. This broadens what a host can ask the device to sign, which could make phishing or UI-bypass attacks slightly easier, but it does not by itself leak keys or allow arbitrary paths.

Recommended action

Treat this as a behavior change that reduces a defensive invariant. Review whether the relaxed policy could be abused to make a user sign a message on a path whose on-screen address type does not match the host's claimed script type, and consider whether the UI now clearly shows the effective address/script type before signing. If this change ships in a release, document it in release notes and, if warranted, request a security review of the new test matrix to ensure no unintended path grants were introduced.

Security signals we found

01

Relaxation of path/script-type binding for SignMessage

02

New helper merges export patterns across multiple InputScriptTypes

03

Tests rewritten to expect success where previous tests expected Forbidden key path

04

SPENDTAPROOT explicitly kept restricted

05

No mention of CVE, advisory, or security bug in commit message

Risk score

Why this scored 37/100

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