electrum

Electrum Bitcoin wallet
git clone https://git.parazyd.org/electrum
Log | Files | Refs | Submodules

commit b8f2d9dfd486ddc653adc4235b3ccae454450c73
parent f263f8b0fd7df4777d1f3672cdc5c722d58621c8
Author: Neil Booth <kyuupichan@gmail.com>
Date:   Thu, 31 Dec 2015 09:56:05 +0900

Hardware wallets don't have seeds

Diffstat:
Mplugins/ledger/ledger.py | 5+----
Mplugins/trezor/plugin.py | 5+----
2 files changed, 2 insertions(+), 8 deletions(-)

diff --git a/plugins/ledger/ledger.py b/plugins/ledger/ledger.py @@ -70,6 +70,7 @@ class BTChipWallet(BIP32_HD_Wallet): return False def is_watching_only(self): + assert not self.has_seed() return self.force_watching_only def get_client(self, noPin=False): @@ -206,8 +207,6 @@ class BTChipWallet(BIP32_HD_Wallet): self.give_error("Not supported") def sign_message(self, address, message, password): - if self.has_seed(): - return BIP32_HD_Wallet.sign_message(self, address, message, password) use2FA = False self.signing = True self.get_client() # prompt for the PIN before displaying the dialog if necessary @@ -258,8 +257,6 @@ class BTChipWallet(BIP32_HD_Wallet): return chr(27 + 4 + (signature[0] & 0x01)) + r + s def sign_transaction(self, tx, password): - if self.has_seed(): - return BIP32_HD_Wallet.sign_transaction(self, tx, password) if tx.is_complete(): return self.signing = True diff --git a/plugins/trezor/plugin.py b/plugins/trezor/plugin.py @@ -36,6 +36,7 @@ class TrezorCompatibleWallet(BIP44_Wallet): return False def is_watching_only(self): + assert not self.has_seed() return not self.proper_device def can_change_password(self): @@ -68,8 +69,6 @@ class TrezorCompatibleWallet(BIP44_Wallet): raise RuntimeError(_('Decrypt method is not implemented')) def sign_message(self, address, message, password): - if self.has_seed(): - return BIP32_HD_Wallet.sign_message(self, address, message, password) self.check_proper_device() try: address_path = self.address_id(address) @@ -88,8 +87,6 @@ class TrezorCompatibleWallet(BIP44_Wallet): def sign_transaction(self, tx, password): if tx.is_complete() or self.is_watching_only(): return - if self.has_seed(): - return BIP32_HD_Wallet.sign_transaction(self, tx, password) self.check_proper_device() # previous transactions used as inputs prev_tx = {}