Amber nodes are monitored by CommitWatch. Gray nodes are sampled from authenticated GitHub public commit search and may not represent complete contribution history.
This commit updates the user interface and internal checks for generating wallet seed phrases using dice rolls as a source of randomness. It enforces a minimum number of dice rolls depending on the desired seed strength: at least 50 rolls …
Enforces minimum entropy input length based on target mnemonic strengthAdds server-side/model-layer validation in addition to UI gatingPrevents generation of 256-bit seeds from insufficient dice-roll entropy
This is a one-line build-configuration fix for the Keystone hardware wallet's Zcash signing code. Previously, transparent Zcash transaction signing was only enabled when the 'multi_coins' feature was active. The change also enables it when…
No memory-safety issues visible in the diffNo cryptographic algorithm changesNo input validation changes
This is a one-line build-configuration fix for the Keystone hardware wallet's Zcash transparent transaction signing. Previously, the code that signs the transparent (non-shielded) part of a Zcash PCZT transaction was only compiled when the…
Functional bug in cryptographic signing pathBuild-feature conditional compilation errorCould produce invalid/incomplete transaction signatures
This commit fixes a product limitation: Keystone 3 hardware wallets using a SLIP39-style recovery phrase could not connect to the Keystone mobile app for Zcash. The patch removes Zcash from the list of coins shared when a SLIP39 wallet is …
Functional/compatibility fix for SLIP39 Zcash supportInput validation added for zcash seed fingerprint length (must be 0 or 32)No evidence of buffer overflow, use-after-free, or cryptographic weakness in the patch
This commit fixes a build-configuration bug that could prevent creating or saving public key information when using a SLIP39 passphrase. The old code accidentally skipped the normal key-derivation path for certain crypto types in non-Bitco…
This commit is a large refactor of how the Keystone 3 firmware handles Zcash transactions. It splits the code into two build flavors: a 'multi-coins' build that supports only transparent (public) Zcash addresses using a normal xpub, and a …
Refactor splits Zcash shielded (Orchard/UFVK) and transparent-only code paths by build featureCypherpunk build continues to handle encrypted UFVK and Orchard actions; multi-coins build uses only transparent xpubLikely typo in feature macro: CYBERPUNK_VERSION instead of CYPHERPUNK_VERSION in src/ui/gui_chain/multi/gui_zcash.c
This commit adds support for the Zcash (ZEC) cryptocurrency to the Keystone 3 hardware wallet firmware. It introduces address generation, derivation path handling, UI elements, and wallet connection data for Zcash. There is no indication o…
This commit is a work-in-progress 'temp commit' that refactors Zcash support in the Keystone 3 firmware. It moves Zcash UI code from a 'cypherpunk' build variant into the standard multi-coin build, splits a combined Zcash UFVK/seed-fingerp…
New sensitive data field (32-byte Zcash seed fingerprint) is added to a wallet connection QR/UR payloadRefactoring of Zcash UFVK and seed-fingerprint cache accessors changes which build configurations include the code (`#ifndef BTC_ONLY` instead of `#ifdef CYPHERPUNK_VERSION`)Debug print statements for xpub chain code and key path were removed, reducing information leakage in logs
This commit fixes the firmware's build for a software simulator. It removes an unused public-key derivation step in Bitcoin PSBT handling, relaxes a hardware-only flash-read assertion when compiling the simulator, and adds a simulator-only…
Removal of public-key derivation code in Bitcoin PSBT pathAssertion on RSA prime flash read length disabled for simulator buildConditional simulator-only header inclusion
This commit fixes build errors in the simulator (non-production) build of the Keystone 3 firmware. It removes an unused public-key derivation step in Bitcoin PSBT handling, relaxes a hardware flash-read assertion when compiling for the sim…
This commit fixes how the Keystone 3 hardware wallet parses Bitcoin PSBT (Partially Signed Bitcoin Transaction) outputs. The change adds verification that an output's Bitcoin address actually matches the public key and derivation path clai…
Missing cryptographic verification of PSBT output scriptPubKey against wallet-derived keysTrusting attacker-supplied PSBT output metadata (bip32_derivation) without script validationPotential address spoofing / change-address manipulation in hardware wallet transaction display
This commit changes how the Keystone hardware wallet labels Bitcoin transaction outputs on its screen. It adds a new 'is_mine' flag and shows 'Change' or 'Receive' labels next to outputs that belong to the user's own wallet. The goal appea…
UI now explicitly marks wallet-owned outputs as Change or Receive, reducing risk of user misidentifying change outputs as payments to third partiesParsedOutput gains an explicit is_mine field instead of inferring ownership only from path presenceNo input validation, parsing, cryptographic, or signing logic is modified
This is a large cleanup commit titled 'chore: fix warning'. It removes compiler warnings across many Rust modules by deleting unused imports, switching to modern Rust syntax, and fixing minor style issues. The most notable functional chang…
Monero randomness source changed from deterministic ChaCha20Rng seed to OsRng (security-hardening)Large warning-cleanup refactor touching Bitcoin, Solana, Cardano, Monero, Aptos, IOTA, Arweave, Avalanche, Sui, and keystore codeNo explicit security relevance stated by vendor
This commit is a routine cleanup of Rust compiler warnings (Clippy lints). It removes unused imports, rewrites idiomatically cleaner code, fixes variable naming, and updates a few function signatures. There is no indication it fixes a secu…
This is a large code-cleanup commit titled 'fix: run fmt and rust fix'. It applies Rust formatting, clippy lint fixes, and removes unstable nightly feature flags across many Rust files in the Keystone 3 firmware. The changes are mostly sty…
Monero RNG source changed from deterministic ChaCha20Rng seeds (derived from transaction/extra data) to OsRng for bulletproofs, CLSAG signatures, and transaction keysMany FFI functions re-annotated as unsafe extern "C" and raw-pointer length validation centralized via extract_array! macrobuild.rs now silently ignores cbindgen binding-generation errors (empty error closure)