Beispiel #1
0
#
# 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
Beispiel #2
0
 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)
Beispiel #3
0
 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)
Beispiel #4
0
 def _enumerate_web_usb(self):
     if self.libraries_available:
         from keepkeylib.transport_webusb import WebUsbTransport
         return WebUsbTransport.enumerate()
     return []