2014-08-11 18:19:05 +00:00
|
|
|
#!/usr/bin/python
|
|
|
|
|
|
|
|
from trezorlib.client import TrezorClient
|
|
|
|
from trezorlib.transport_hid import HidTransport
|
|
|
|
|
|
|
|
def main():
|
|
|
|
# List all connected TREZORs on USB
|
|
|
|
devices = HidTransport.enumerate()
|
|
|
|
|
2014-08-11 19:31:34 +00:00
|
|
|
# Check whether we found any
|
|
|
|
if len(devices) == 0:
|
|
|
|
print 'No TREZOR found'
|
|
|
|
return
|
|
|
|
|
2014-08-11 18:19:05 +00:00
|
|
|
# Use first connected device
|
|
|
|
transport = HidTransport(devices[0])
|
|
|
|
|
|
|
|
# Creates object for manipulating TREZOR
|
|
|
|
client = TrezorClient(transport)
|
|
|
|
|
|
|
|
# Print out TREZOR's features and settings
|
|
|
|
print client.features
|
|
|
|
|
2014-08-11 19:31:34 +00:00
|
|
|
# Get the first address of first BIP44 account
|
|
|
|
# (should be the same address as shown in mytrezor.com)
|
2014-08-11 18:19:05 +00:00
|
|
|
bip32_path = client.expand_path("44'/0'/0'/0/0")
|
2014-08-11 19:31:34 +00:00
|
|
|
address = client.get_address('Bitcoin', bip32_path)
|
2014-08-11 18:19:05 +00:00
|
|
|
print 'Bitcoin address:', address
|
|
|
|
|
|
|
|
client.close()
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
|
main()
|