🐍 Client side implementation for TREZOR-compatible Bitcoin hardware wallets.
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。
 
 
Chakib Benziane 74424168b2 Merge pull request #1 from sp4ke/sp4ke-patch-1
Avoid repeating keyword argument
8年前
bash_completion.d add initial bash_completion script 8年前
tests Unit Test: PIN protection timeout 8年前
tools unclutter root dir by moving scripts into tools subdirectory 8年前
trezorlib add session request to TransportV2, add @session helper 8年前
.gitignore remove images 9年前
.travis.yml drop python 2.6 and older, 3.3 and older 8年前
COPYING python-trezor is LGPLv3 9年前
MANIFEST.in Include tests in release source tarball 8年前
README.rst update readme 8年前
build_pb.sh cleanup protobuf mess 10年前
cmdtr.py rename cmdtr.py to trezorctl (but keep symlink for now) 9年前
setup.py Avoid repeating keyword argument 8年前
trezorctl Allow leading 0x in data. Handle new contracts. 8年前

README.rst

python-trezor
=============

.. image:: https://travis-ci.org/trezor/python-trezor.svg?branch=master
    :target: https://travis-ci.org/trezor/python-trezor

.. image:: https://badges.gitter.im/trezor/community.svg
    :target: https://gitter.im/trezor/community

Client side implementation for TREZOR-compatible Bitcoin hardware wallets.

See http://bitcointrezor.com for more information.

Install
-------

(Run with sudo if not running in superuser mode under Linux)

.. code::

  pip install trezor

On Linux you might need to run these commands first:

.. code::
  sudo apt-get install python-dev cython libusb-1.0-0-dev libudev-dev git
  sudo pip install setuptools

Example
-------

also found in ``tools/helloworld.py``

.. code:: python

  #!/usr/bin/env python

  from trezorlib.client import TrezorClient
  from trezorlib.transport_hid import HidTransport

  def main():
      # List all connected TREZORs on USB
      devices = HidTransport.enumerate()

      # Check whether we found any
      if len(devices) == 0:
          print('No TREZOR found')
          return

      # 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)

      # Get the first address of first BIP44 account
      # (should be the same address as shown in mytrezor.com)
      bip32_path = client.expand_path("44'/0'/0'/0/0")
      address = client.get_address('Bitcoin', bip32_path)
      print('Bitcoin address:', address)

      client.close()

  if __name__ == '__main__':
      main()

PIN Entering
------------

When you are asked for PIN, you have to enter scrambled PIN. Follow the numbers shown on TREZOR display and enter the their positions using the numeric keyboard mapping:

=== === ===
 7   8   9
 4   5   6
 1   2   3
=== === ===

Example: your PIN is **1234** and TREZOR is displaying the following:

=== === ===
 2   8   3
 5   4   6
 7   9   1
=== === ===

You have to enter: **3795**