# # The script has been modified for KeepKey Device. from __future__ import print_function import sys sys.path = ['../',] + sys.path from keepkeylib.transport_pipe import PipeTransport from keepkeylib.transport_hid import HidTransport from keepkeylib.transport_socket import SocketTransportClient from keepkeylib.transport_webusb import WebUsbTransport from keepkeylib.transport_udp import UDPTransport hid_devices = HidTransport.enumerate() webusb_devices = WebUsbTransport.enumerate() reload(sys) sys.setdefaultencoding('utf8') # Only count a hid device if it has more than just the U2F interface exposed onlyU2F = len(hid_devices) > 0 and \ hid_devices[0][0] == None and hid_devices[0][1] == None and hid_devices[0][2] != None if len(hid_devices) > 0 and not onlyU2F: if hid_devices[0][1] != None: print('Using KeepKey over HID') TRANSPORT = HidTransport TRANSPORT_ARGS = (hid_devices[0],) TRANSPORT_KWARGS = {'debug_link': False} DEBUG_TRANSPORT = HidTransport
def webusb_transport(self, device): from keepkeylib.transport_webusb import WebUsbTransport for dev in WebUsbTransport.enumerate(): if device.path == self._dev_to_str(dev): return WebUsbTransport(dev)
def webusb_transport(self, device): from keepkeylib.transport_webusb import WebUsbTransport for d in WebUsbTransport.enumerate(): if device.id_.startswith(d.getSerialNumber()): return WebUsbTransport(d) return WebUsbTransport(device)
def _enumerate_web_usb(self): if self.libraries_available: from keepkeylib.transport_webusb import WebUsbTransport return WebUsbTransport.enumerate() return []