⚠️ OBSOLETE. DO NOT USE! Python implementation of TREZORv1 compatible hardware bitcoin wallet.
Python Shell
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
res
tests
trezor
.gitignore
COPYING
MANIFEST.in
README.rst
build_pb.sh
display.py
emu.sh
rpi-autorun.sh
rpi-init
rpi-serial.sh
setup.py

README.rst

trezor-emu

Python implementation of TREZOR compatible hardware bitcoin wallet.

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

How to install (Debian/Ubuntu/Raspbian)

  • cd /home/pi (on Raspberry Pi)
  • git clone https://github.com/trezor/trezor-emu.git
  • sudo apt-get update
  • sudo apt-get install python-dev python-setuptools screen
    (if you are not running on Raspberry Pi install python-pygame too)
  • cd trezor-emu
  • sudo python setup.py develop
  • Running on standard desktop: ./emu.sh
  • Running on Raspberry Pi: sudo ./rpi-serial.sh
  • Autostart on Raspberry Pi (starts trezor-emu in 'screen'):
  • sudo ln -s /home/pi/trezor-emu/rpi-init /etc/init.d/trezor
  • sudo update-rc.d trezor defaults

TODO

  • x Implement deterministic keys / BIP32
  • x Implement deterministic ECDSA / RFC 6979
  • x Implement new mnemonic / BIP39
  • x SetMaxFeeKb -> Settings
  • x Allow to modify maxfeekb, coin type, ...
  • x Implement SimpleSignTx
  • Fix SignTx
  • x Safe recovery of the seed
  • x Finalize workflow for ResetDevice
  • x Finalize LoadDevice
  • x Allow importing xprv structure
  • x Factory reset
  • x Wipe device
  • x Pin change
  • x device_id
  • x mpk_hash
  • x Exponential pin backoff
  • x PassphraseRequest
  • x Encrypted seed
  • x Plugin - signing script
  • Change address - rule of similar path, limit n<100000
  • Protect SimpleSignTx, SignTx
  • Check protection levels of all methods
  • Per-session PIN
  • Return Failure_NotInitialized instead of generic error