Neil Booth
5baa5feb11
Put restore_wallet_class back in the derived classes
9 years ago
Neil Booth
9946feb352
Have BTChipWallet derive from BIP44_Wallet
Narrowing the gap with the Trezor code a bit
9 years ago
Neil Booth
d5c3c09bbc
Trezor: Implement decrypt message
For reasons I don't yet understand this can only decrypt
messages encrypted by the Trezor, not by Electrum
9 years ago
Neil Booth
2f1d6b2379
Have Trezor dialog work even if wallet unpaired
Required cleanup of handler logic. Now every client
is constructed with a handler, so there is never a
question of not having one.
9 years ago
Neil Booth
3e8598c245
Move trezor-specific install wizard code to plugin
9 years ago
Neil Booth
54cdd551fe
Avoid unnecessary exception on missing libs
9 years ago
Neil Booth
a3bced210d
Treozr: improved settings screen
Nicer layout. Split into three tabs.
9 years ago
ThomasV
5915b9b7e1
restore action-driven wizard logic
9 years ago
Neil Booth
9b29c6c2e6
Trezor: all four available device initializations
Trezor and KeepKey devices can now be initialized by:
- device-generated seed
- existing seed
- BIP39 mnemonic
- master private key
9 years ago
Neil Booth
3d9f321cae
Use a shared device manager
Use a shared device manager across USB devices (not yet taken
advantage of by ledger). This reduces USB scans and abstracts
device management cleanly.
We no longer scan at regular intervals in a background thread.
9 years ago
Neil Booth
2ad009bb9d
Add some informative comments
9 years ago
Neil Booth
6516b28840
TrezorCompatiblePlugin: make it a thread job
We shouldn't be using QT gui threads
9 years ago
Neil Booth
43fd684d97
Trezor: add session timeout to preferences
Fixes #803
9 years ago
Neil Booth
87363c8301
Trezor: Implement resetting a device
9 years ago
Neil Booth
e6afaf173c
Hardware wallets can create accounts
9 years ago
Neil Booth
a7028176cd
Trezor: Add wipe device functionality
Also add a chicken box for PIN removal.
9 years ago
Neil Booth
9eaf510ac6
Test if initialized to determine watching only
Prepares for device wipe functionality
9 years ago
Neil Booth
f3e6bf0280
Passphrase-related fixes
Move normalize code to one place on the wallet
Passphrases don't have password strength meter
9 years ago
Neil Booth
4fe01cb8d3
Change scan_devices logic
Fixes title bar updates about watching only
9 years ago
Neil Booth
21bf5a8a84
Better support for USB devices
Benefits of this rewrite include:
- support of disconnecting / reconnecting a device without having
to close the wallet, even in a different USB socket
- support of multiple keepkey / trezor devices, both during wallet
creation and general use
- wallet is watching-only dynamically according to whether the
associated device is currently plugged in or not
9 years ago
Neil Booth
187b4dc9c1
Trezor: Need to set client in show_address
9 years ago
Neil Booth
1d07960290
Remove constructor method of plugins
Clean up wallet class loading.
9 years ago
Neil Booth
cf4ee487cd
Remove duplicate code
Cut-n-paste somehow into the same class
9 years ago
Neil Booth
c3df5c7177
Work around trezor library bug
expand_path() should be static. Until it is we implement it ourselves.
9 years ago
Neil Booth
2f58d419dc
Get ledger wallet working, for restore at least
Fixes #1592
9 years ago
Neil Booth
11d135b32d
Better install wizard
Break out the workflow logic of the install wizard
into a base class. This means reimplementing with
full support in a new GUI is now easy; you just provide
ways to request passwords, show messages etc. The API
is fully documented in the base class.
There are a couple of minor outstanding issues, including that
the old messages shown when recovering a wallet are missing.
I will come back to that. Ledger wallet might be broken.
Other improvements:
The install wizard code is now easy to follow and understand.
Hardware wallets can now be restored without any need for their
accompanying libraries.
Various bits of trustedcoin were broken and have been fixed.
Many plugin hooks can be removed. I have only started on this.
9 years ago
Neil Booth
93d05e8cfe
Have close_wallet hook take a wallet.
9 years ago
Neil Booth
b8f2d9dfd4
Hardware wallets don't have seeds
9 years ago
Neil Booth
1d51335827
Remove need for self.wallet for h/w wallets
9 years ago
Neil Booth
84450b9189
Revert mistaken commit
9 years ago
Neil Booth
0f70d0b8a5
The constructor() concept doesn't exist
Did it ever?
9 years ago
Neil Booth
993ff30616
Eliminate dead code
9 years ago
Neil Booth
56497c1ae2
Don't use is_available() for HW wallets
is_available() is only used from generic code for non-hardware
wallets. Having a local function of the same name is confusing.
9 years ago
Neil Booth
638bdc23f2
Fix hardware test for watching only
9 years ago
Neil Booth
d843e41884
TrezorWallet: don't duplicate base class funcs
9 years ago
Neil Booth
791d3a2aa2
Partially restore prior
It was breaking hardware wallet creation
9 years ago
Neil Booth
9d9fcbde64
Proper treatment of restored hardware wallets
They have a different wallet type; they require no plugin nor
plugin libraries to use.
Remove pointless public key code that was implemented in the
base classes already.
Partial fix for #1592 . Unfortunately the plugin and library
are still required to actually restore the wallet, but for
no reason that isn't fixable.
9 years ago
Neil Booth
43d21de1b2
Clean up trezor client interface
9 years ago
Neil Booth
11e1c62f28
Move hardware wallet to trezor/
On second thoughts it does go better there.
9 years ago
Neil Booth
7372e0e082
PEP8-ify most of plugins/trezor
9 years ago
Neil Booth
c02daa56b0
Finish merging keepkey / trezor implementations
9 years ago
Neil Booth
f3329988b2
More keepkey / trezor commonizing and cleanup
9 years ago
Neil Booth
33e57fe5a7
Share non-GUI plugin parts of KeepKey and Trezor
9 years ago
Neil Booth
42719cd0a9
Commonize GuiMixin for keepkey and trezor
9 years ago
Neil Booth
cb4947d705
Add the keepkey cancellation feature
to the generic implementation. Not currently used by the trezor
libraries.
9 years ago
Neil Booth
3a1bb5b61a
Combine keepkey and trezor wallet code
Essentially identical so silly to have two copies.
Also fix a double-dialog during sign bug that caused one to not
disappear (on MacOSX at least).
9 years ago
Neil Booth
96c7f9e7cb
Partially revert prior
9 years ago
Neil Booth
c298860e11
A fix and cleanups for hardware wallets
9 years ago
ThomasV
ddae2516c1
keepkey: cmdline plugin
9 years ago
ThomasV
d5f43610ed
fix imports in hardware wallets
9 years ago