app lets user encrypt wallet with hardware device with different passphrase than what is used for the addresses
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 8.6k
- Forks
- 3.5k
- Avg merge
- 2d 8h
- Merged PRs (30d)
- 61
Description
Hi. I hope you will help me.
So I have Trezor T, set up Standard wallet -> Hardware wallet -> Use hardware device -> Choose my trezor device, enabled passphrase, PIN and encryption of wallet file. The I had a choices of native segwit and default derivation path (I think it was that way, I don't remember exactly). All seemed ok, so I transfered coins to this wallet. It was version 3.1.3 I think.
I updated to 3.2.2. Now I wanted to try to do something with arrived coins and I can't. When I open wallet with Trezor and passphrase, Electrum shows my balance and other data like green lights at the bottom, I can see my public master key, some info about wallet etc. BUT!
- I can sign message, but cannot verify - "Wrong signature"
- If I click on Show on TREZOR I get wrong address on device (not that in Electrum)
- I cannot sign any transaction containing any wallet's address (e.g. change)
- I can sign transaction that spends all coins from wallet's address to other wallet, but cannot broadcast it with error message:
error: {'code': 1, 'message': 'the transaction was rejected by network rules.\n\n64: non-mandatory-script-verify-flag (Script failed an OP_EQUALVERIFY operation\n
Ok, yeah... Then I tried to create a new wallet within electrum 3.2.2 with the same passphrase and other standard options. Guess what? Now it has other addresses and zero balance! I decrypted that both wallets, and under "keystore" section both has the same values, even xpub. With new wallet I can sign and verify messages and it shows correct address on device when I click "Show on TREZOR".
So, I have a few questions.
- WTF?!
- What I did wrong?
- How that happened that I can "correctly" (green lights at the bottom and no warnings and errors from Electrum) access two wallets with the same passphrase but with different addreses?
- How could Electrum generate different addresses with the same pubkey?
- How can I gain control over my coins in the "wrong" wallet?
Thank you.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No files or tests are named. Start by reproducing the Trezor T passphrase workflow described for Electrum 3.1.3 and 3.2.2, comparing the derived addresses, signing, and wallet encryption behavior. Done means identifying why the same displayed keystore values produce different addresses and defining a safe fix or recovery path for affected coins.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- security
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 20/100