RUSTSEC-2026-0225
Debug output exposes NIP-46 and NIP-60 credentials
Details
Several NIP-46 and NIP-60 types used derived `Debug` implementations even though their fields contained credentials or decrypted application data. Formatting these values exposed NIP-46 connection secrets and request parameters, as well as NIP-60 private keys, Cashu bearer proofs, and quote capability identifiers.
Applications commonly include `Debug` output in diagnostic logs, tracing spans, or error reports. Anyone able to read those outputs could recover the disclosed credentials and, depending on the value, impersonate a signer connection or spend wallet tokens. The issue does not expose data unless an affected value is formatted and the resulting output is made accessible.
The affected types now use custom `Debug` implementations that preserve variant and non-sensitive structural information while replacing credentials, bearer values, and plaintext fields with redaction markers. Serialization and protocol behavior are unchanged.
Are you affected?
Enter the version of the package you're using.
Affected packages
0.0.0-0 Fixed in: 0.44.7 Upgrade nostr to 0.44.7 or newer (ecosystem crates.io).