OpenSourceCheck

OSC-2026-0023 · github.com/bitcoindevkit/bdk_wallet

none-found clean-run grok-4.5 2026-08-04 signed: nostr

Repository
github.com/bitcoindevkit/bdk_wallet
Commit
fc88144fc8e9532bc23ad490cb2de0445401b8b1
Scope path
src/wallet/
Model
grok-4.5
Harness
grok-build
Prompts
prompts/tx-authorization-audit-v1.md
Independent runs
1
Transcript sha256
5110a8a666c6bf7e14148d3553af3cb8596c12c434b1f2de458b6aa7ad629233
Auditor
TheIcarusWings (theicaruswings)
Signature
nostr-schnorr · npub19tzp8lf3klmqj3dz9mz0qnuvjp7uyy9993gmljmyaxs8phztj7wsnujvq5

Scope. Independent Grok re-audit of transaction-authorization class on bdk_wallet at fc88144f. Threat model: constructing software wallet holding descriptors, not hardware PSBT validator. In scope: output ownership and change configuration. NOT applicable: WYSIWYS display, firmware, QR/USB. Not examined in depth: coin selection, fee estimation internals, PSBT finalization. Cross-model counterpart to OSC-2026-0011.

Findings

none-found OSC-2026-0023-F1 unreviewed

No defect found under software-wallet construction threat model. Default change derives from the wallet's internal keychain mapping; is_mine resolves via the wallet's own SPK index. Explicit drain_to / change_script overrides are caller-controlled by design (sweep/advanced builders), not silent misrouting. Agreement with OSC-2026-0011.

src/wallet/mod.rs (create_tx, map_keychain, is_mine); src/wallet/tx_builder.rs