Skip to content

Surface passphrase support for Electrum seeds and use “BIP39 Passphrase” consistently. Closes #10797 - #10878

Open
rdymac wants to merge 6 commits into
spesmilo:masterfrom
rdymac:electrum-fix-wizard-seed-ext-inline
Open

Surface passphrase support for Electrum seeds and use “BIP39 Passphrase” consistently. Closes #10797#10878
rdymac wants to merge 6 commits into
spesmilo:masterfrom
rdymac:electrum-fix-wizard-seed-ext-inline

Conversation

@rdymac

@rdymac rdymac commented Aug 20, 2026

Copy link
Copy Markdown
Contributor

These changes try to make the use of a seed extension aka Passphrase more user-friendly. As shown from recent events having a custom Passphrase extending a seed is a great idea for funds safety. I didn't even know Electrum seeds supported this despite it has been there for years. I remember myself creating a BIP39 seed in a different wallet software just to be able to restore it inside Electrum + a Passphrase to make it stronger.

I also tackled this request #10797 for clearer BIP39 Passphrase wording. cc @MatheyBTC @SomberNight

I dev built and tested the flows, but please feel free to test these changes if you see them worthy of a merge.

python -m pytest tests/test_wizard.py tests/test_mnemonic.py -q --tb=short
50 passed, 45 subtests passed

I tried to add clear copy and easy wording for users, also tried to improve the UX by not separating the Passphrase creation from the seed step itself, IMO this is better for understanding the importance of the seed+Passphrase despite the amount of words and lines needed to educate users.

cursoragent and others added 6 commits August 19, 2026 20:28
The extra-word option could be ticked before the seed classified, then
the follow-up page disappeared. Tie the on-page checkbox (Qt and QML)
to can_seed_have_passphrase, and skip have_ext for old Electrum seeds.

Co-authored-by: Randy Brito <me@randybrito.com>
Old Electrum seeds can still have leftover seed_extend=True after the extra-word page is skipped. Empty passphrase is valid for those seeds.

Co-authored-by: Cursor <cursoragent@cursor.com>
Show the extra-word field under the checkbox instead of a follow-up page. Keep confirm_ext when creating a new seed.

Co-authored-by: Cursor <cursoragent@cursor.com>
Use Passphrase copy on the seed page, put the create-seed backup warning under the checkbox, and keep the shared seed_warning_msg for the seed dialog.

Co-authored-by: Cursor <cursoragent@cursor.com>
If the wallet has a passphrase, the Seed dialog already shows it; the backup warning should tell the user to save that too.

Co-authored-by: Cursor <cursoragent@cursor.com>
…ectrum-fix-wizard-seed-ext-inline

Co-authored-by: Cursor <cursoragent@cursor.com>
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants