From b8f2d9dfd486ddc653adc4235b3ccae454450c73 Mon Sep 17 00:00:00 2001 From: Neil Booth Date: Thu, 31 Dec 2015 09:56:05 +0900 Subject: [PATCH] Hardware wallets don't have seeds --- plugins/ledger/ledger.py | 5 +---- plugins/trezor/plugin.py | 5 +---- 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/plugins/ledger/ledger.py b/plugins/ledger/ledger.py index 9e41b2a4e..2328552fe 100644 --- 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 index cad63db97..6658e02c6 100644 --- 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 = {}