Commit Graph

602 Commits

Author SHA1 Message Date
Jan Pochyla 403d5344e2 trezor.msg: support new modtrezormsg API 2017-04-21 16:25:00 +02:00
Jan Pochyla 46f748205d modtrezormsg: WIP python USB API 2017-04-21 16:25:00 +02:00
Pavol Rusnak a7e17f07ee
tests: finish sign_identity workflow, update run_tests_python_trezor.sh to reflect current state 2017-04-16 22:21:21 +02:00
Pavol Rusnak e7bcaae3d4
src.apps.common: update coins.py 2017-04-12 14:48:51 +02:00
Pavol Rusnak 393ead9beb
src: remove boot.py 2017-04-08 18:11:10 +02:00
Peter Jensen 76705dde5b trezor.ui: change failure pin msg 2017-04-06 14:16:48 +02:00
Pavol Rusnak eef147d810
modtrezorcrypto: add crypto.rfc6979 class 2017-04-03 21:29:52 +02:00
Pavol Rusnak 9257d44b7a
firmware: homescreen shows trezor.io/start when storage not initialized 2017-04-01 23:33:28 +02:00
Pavol Rusnak f13c122561
rebase micropython, min_time -> peektime 2017-03-31 11:30:31 +02:00
Pavol Rusnak 8a6b78187e
modtrezorconfig: don't use mock anymore 2017-03-30 20:57:46 +02:00
Peter Jensen 3daa18a5f1 trezor.ui: fading on swipe up 2017-03-30 17:35:26 +02:00
Peter Jensen 38c37da0c3 trezor.ui: reset device redesign 2017-03-29 14:46:47 +02:00
Peter Jensen d47e9fb855 trezor.ui: prototype of seed setup 2017-03-28 19:08:59 +02:00
Peter Jensen 3e6631b5ef trezor.ui: reposition QR to center 2017-03-28 15:12:15 +02:00
Peter Jensen 5cc87ecdce trezor.ui: fix container 2017-03-28 13:18:39 +02:00
Peter Jensen 36637c23f6 trezor.ui: remove PM colors and other visuals changes 2017-03-27 21:36:17 +02:00
Peter Jensen 4c206be585 trezor.ui: fix of fix confirmation 2017-03-22 15:15:12 +01:00
Peter Jensen 0723f6c198 trezor.ui: fix confirm 2017-03-22 15:01:16 +01:00
Peter Jensen 80b83add73 trezor.ui: text as widget 2017-03-22 14:47:08 +01:00
Peter Jensen 96020a4953 micro fix 2017-03-21 13:15:15 +01:00
Peter Jensen 8d4cd85659 minor design changes 2017-03-20 21:41:06 +01:00
Jan Pochyla 78d82386d1 trezorhal: adjust to new structure 2017-03-06 17:33:48 +01:00
Pavol Rusnak 9c3c19959b
modtrezorcrypto: add Blake2b 2017-02-28 18:47:27 +01:00
Jan Pochyla bf878ff15e trezor.loop: support re-using Sleep and Wait objects 2017-02-20 11:36:28 +01:00
Jan Pochyla a8f5738398 trezor.ui.keyboard: suggest more accurately 2017-02-09 13:03:10 +01:00
Jan Pochyla 4c8d3e4a35 trezor.ui.keyboard: add two keyboard prototypes 2017-02-08 16:21:32 +01:00
Jan Pochyla d939cabcb5 trezor.ui.button: add disabled state 2017-02-08 16:21:32 +01:00
Jan Pochyla e4af95e11b trezor.ui.confirm: support Widget content 2017-02-08 16:21:32 +01:00
Jan Pochyla 910033d71c trezor.ui: add Widget 2017-02-08 16:21:32 +01:00
Jan Pochyla e86924d645 trezor.wire: fix unexpected message error 2017-01-24 14:14:03 +01:00
Jan Pochyla 943d77ba32 apps.debug: hack around PIN lock, add reset_device fields 2017-01-24 14:14:03 +01:00
Jan Pochyla 1ed4dfa516 apps.management: implement T1 reset device workflow
TODO: UI
2017-01-24 14:14:03 +01:00
Jan Pochyla fd9361ce77 apps.common.storage: make config ids public 2017-01-24 14:14:03 +01:00
Jan Pochyla 5da3e67a0c apps.homescreen: handle Ping.passphrase_protection 2017-01-24 14:14:03 +01:00
Jan Pochyla 059315feb4 apps.common: add protect_by_passphrase 2017-01-24 14:14:03 +01:00
Jan Pochyla d13006ebbe apps.homescreen: brighten the display after swipe 2017-01-20 16:07:33 +01:00
Jan Pochyla bd514c4732 apps.homescreen: optimize logo display 2017-01-20 15:51:06 +01:00
Jan Pochyla fed8838545 trezor.ui.confirm: fix HoldToConfirmDialog 2017-01-20 15:51:06 +01:00
Jan Pochyla ec49c2d97a trezor.wire: unexpected message should interrupt workflow silently 2017-01-18 18:00:38 +01:00
Jan Pochyla 4ab469d02d apps.wallet: add qr code to get_address
TODO: the widget system clearly needs some work
2017-01-18 17:59:11 +01:00
Jan Pochyla 9914b0db2b main: temporary hack, keep apps.common.storage loaded 2017-01-17 17:43:50 +01:00
Jan Pochyla 984f088519 apps.common: fix request_pin 2017-01-17 17:43:08 +01:00
Pavol Rusnak 6eaea34c8c
-> trezor.io 2017-01-10 16:31:30 +01:00
Jan Pochyla 8bdd59642f trezor.wire: print session ID as hex 2017-01-06 14:07:18 +01:00
Jan Pochyla d30e565cb3 trezor.main: fix for new loop 2017-01-06 14:06:03 +01:00
Jan Pochyla 5173a87f3e trezor.loop: rewrite for utimeq, document
- faster, consumes less memory
- untangle loop and ui.refresh

TODO: msg.select could fill a pre-allocated list/bytearray just like utimeq.pop does
TOOD: we could move to a readyness-based async model and let the consumers readinto() the messages right into the target buffers, to avoid allocating tuples inside msg.select()
2017-01-02 15:45:56 +01:00
Jan Pochyla 666018ec57 apps.management.change_pin: ask event if unlocked 2016-12-19 11:32:39 +01:00
Jan Pochyla 59feeed3cb apps.common.request_pin: add at_least_once 2016-12-19 11:32:08 +01:00
Jan Pochyla 96ead03e03 apps: fix for change_pin and debug 2016-12-17 13:20:57 +01:00
Jan Pochyla e73ff1f3c2 apps: improve language getters/setters 2016-12-15 12:48:33 +01:00
Jan Pochyla 3f657775e9 main: boot debug app earlier 2016-12-15 12:36:55 +01:00
Jan Pochyla 8811814867 apps.management: add change_pin workflow 2016-12-15 12:36:07 +01:00
Jan Pochyla 64dad27abe apps.homescreen: handle Ping.pin_protection 2016-12-15 12:35:18 +01:00
Jan Pochyla b45fd349f5 apps.management: protect by pin earlier 2016-12-15 12:34:46 +01:00
Jan Pochyla c03924c05f apps.common.request_pin: fix client cancel 2016-12-15 12:34:18 +01:00
Jan Pochyla 2a58ca986f apps.common.storage: fix device_id init 2016-12-15 12:33:39 +01:00
Jan Pochyla e111f6338c apps.homescreen: display device label 2016-12-14 11:10:01 +01:00
Jan Pochyla 2cff58f4f0 boot: comment out, usb init will be in C for now 2016-12-13 16:03:57 +01:00
Jan Pochyla 58612f14d2 trezor.config: fix for stmhal 2016-12-13 16:03:00 +01:00
Jan Pochyla b8968e7387 minor perf changes 2016-12-12 15:26:49 +01:00
Jan Pochyla 53c73b3b5c apps: accomodate latest seed changes 2016-12-12 15:26:49 +01:00
Jan Pochyla d2e31e24ee apps.common.seed: simplify, remove root caching 2016-12-12 15:26:49 +01:00
Jan Pochyla 146410856d apps.wallet: move sign_tx workflow to __init__ 2016-12-08 18:51:39 +01:00
Jan Pochyla 3e1b821b3c minor fixes 2016-12-08 16:31:10 +01:00
Jan Pochyla a4f103755b minor api changes 2016-12-08 16:19:09 +01:00
Jan Pochyla e0dfc2ef03 apps: reflect the wire api changes 2016-12-08 16:19:09 +01:00
Jan Pochyla d56dc88861 wire: refactoring
- prefer importing modules instead of module members
- session_id is always first argument
- prefer much shorter names, don't expect users to import module members
- shuffle around session-specific code
- reduce allocations
2016-12-08 16:19:09 +01:00
Jan Pochyla 0b7874ad43 loop: rename Future to Signal
Future semantics were changed to allow multiple deliveries to avoid allocating more future objects than neccessary, and Signal describes this behaviour more accurately.
2016-12-08 16:19:09 +01:00
Jan Pochyla 1b27bb480d trezor.wire: rename modules 2016-12-08 16:19:09 +01:00
Jan Pochyla b145f8f309 apps.common.signtx: add example sanitization 2016-12-08 16:19:09 +01:00
Pavol Rusnak 918150a3f1
tests: make testpy tries running selected tests from python-trezor
apps.ethereum: fix get address call
2016-11-24 17:16:40 +01:00
Jan Pochyla 6edaa68ab3 apps.common: remove sign.pseudo 2016-11-23 15:06:39 +01:00
Jan Pochyla 2e34fc05a6 apps.management: handle ApplySettings 2016-11-23 15:06:39 +01:00
Jan Pochyla e8da59ced0 apps.common: add protect_with_pin, adjust seed.py 2016-11-23 15:06:39 +01:00
Jan Pochyla b400448b97 apps: adjust to last commit 2016-11-23 15:06:39 +01:00
Jan Pochyla 065cbdbc3b protobuf: set missing fields to None 2016-11-23 15:06:39 +01:00
Jan Pochyla a8b519d127 signtx: prealloc the bytearrays 2016-11-23 15:06:39 +01:00
Jan Pochyla 05f832cae7 storage: remove pbuf, add pin lock 2016-11-23 15:06:39 +01:00
Jan Pochyla be7ee61ddd config: always use bytes() for default value 2016-11-23 15:06:39 +01:00
Pavol Rusnak a66d0b2e40
trezor.config: fix config_mock syntax 2016-11-21 20:57:16 +01:00
Pavol Rusnak 6575b8059e
trezor.config: use mock implementation on stmhal again 2016-11-21 20:50:41 +01:00
Pavol Rusnak c6ea71901d
trezor.config: use norcow 2016-11-21 19:56:23 +01:00
Pavol Rusnak 533aebdf6d
trezor.utils: add halt function 2016-11-19 15:23:58 +01:00
Pavol Rusnak f615e5f97f
trezor.crypto: more type annotations 2016-11-19 15:00:18 +01:00
Pavol Rusnak 88e46ca66f
trezor.crypto.rlp: add type annotations 2016-11-18 19:05:40 +01:00
Pavol Rusnak ddd46f6f53
trezor.crypto: add RLP 2016-11-18 18:13:24 +01:00
Pavol Rusnak e120faa227
apps.ethereum: implement EthereumGetAddress 2016-11-18 15:23:56 +01:00
Pavol Rusnak 6e79da8df1
apps.wallet: add CipherKeyValue 2016-11-18 14:59:36 +01:00
Pavol Rusnak 8618248504
apps.wallet: add partial support for SignIdentity (secp256k1 curve only) 2016-11-18 14:19:03 +01:00
Pavol Rusnak 084f1205f1
apps.wallet: cleanup sign/verify message 2016-11-17 13:40:05 +01:00
Pavol Rusnak ecac1d79f2
apps.wallet: refactor message digest method into shared module
naming would need some further thoughts, though
2016-11-16 23:13:04 +01:00
Pavol Rusnak 620ed74aa7
apps.wallet: implement VerifyMessage 2016-11-16 22:55:11 +01:00
Pavol Rusnak 388e2dc305
apps.wallet: implement SignMessage 2016-11-16 21:28:27 +01:00
Jan Pochyla 87dbf8442e apps.management: explain LoadDevice.node 2016-11-16 14:28:56 +01:00
Jan Pochyla 7378d763f0 apps.debug: support DebugLinkState.matrix 2016-11-16 14:28:56 +01:00
Jan Pochyla 722cc2d63b apps.common: add client-side pin input method 2016-11-16 14:28:56 +01:00
Jan Pochyla d00a6723c0 apps.common.signtx: code style 2016-11-16 14:28:56 +01:00
Jan Pochyla c1aa7010ed apps.wallet: fix GetPublicKey.address_n 2016-11-16 14:24:08 +01:00
Jan Pochyla 384bde3efc apps.wallet: support GetAddress.coin_name 2016-11-16 14:24:08 +01:00
Pavol Rusnak 315440fc18
apps.common: refactor address_type functions 2016-11-16 12:42:11 +01:00
Pavol Rusnak cfdd517bf4
apps.common.signtx: fix outputs for multibyte address prefixes 2016-11-16 01:45:18 +01:00
Pavol Rusnak ea12087de7
apps.common: add op_return to signtx 2016-11-16 01:39:31 +01:00
Pavol Rusnak 357a081b53
apps.wallet: add FeeOverThreshold handling 2016-11-16 01:21:25 +01:00
Jan Pochyla 02d615ff06 wire: convert to bytearray every time 2016-11-15 18:55:38 +01:00
Pavol Rusnak 90c4480bf6
apps.fido_u2f: add yubico u2f demo to known apps 2016-11-15 18:40:19 +01:00
Pavol Rusnak e6d38b8b71
apps.wallet: handle EstimateTxSize message 2016-11-15 18:29:46 +01:00
Pavol Rusnak e10e20d550
apps.common.signtx: fix p2sh output 2016-11-15 18:19:32 +01:00
Pavol Rusnak ceb4ed8c59
apps.common.signtx: rework check_address_type function 2016-11-15 18:12:10 +01:00
Jan Pochyla e556aea42b wire: fix when the footer is too short 2016-11-15 18:09:45 +01:00
Jan Pochyla ecd8bd3b2a wallet: remove unimport for now
Importing a module again causes new classes to get created and breaks references between an object and its class.

TODO: revise how imports/unimports are used in signing
2016-11-15 18:09:25 +01:00
Jan Pochyla 72be5cf2f2 signtx: fix typo 2016-11-15 18:07:49 +01:00
Pavol Rusnak 8d496d456b
apps.common.signtx: add paytoscripthash support, fix multibyte 2016-11-15 18:02:05 +01:00
Jan Pochyla 3373ecf128 apps.debug: implement DebugLinkDecision 2016-11-15 13:48:52 +01:00
Jan Pochyla 39b3ecb224 confirm: allow to resolve the dialogs from outside 2016-11-15 13:48:31 +01:00
Jan Pochyla 5d7c2ac4e2 loop: make it possible to re-use Future instances 2016-11-15 13:47:36 +01:00
Jan Pochyla abb6f284ca wallet: use hold to confirm the tx summary 2016-11-15 11:59:27 +01:00
Jan Pochyla a798a07220 signtx: confirm output before hashing 2016-11-15 11:59:27 +01:00
Jan Pochyla 90d9687678 apps.homescreen: cleanup 2016-11-15 11:59:27 +01:00
Jan Pochyla b89666fb87 apps.debug: cleanup 2016-11-15 11:59:27 +01:00
Jan Pochyla ed8973e86d signtx: unify input script derivation 2016-11-15 11:59:27 +01:00
Jan Pochyla 5889d0c932 loop: use ticks_add, ticks_diff 2016-11-15 11:59:27 +01:00
Jan Pochyla f2a0132502 management: fix layout_load_device 2016-11-15 11:59:27 +01:00
Pavol Rusnak b09f0eaf4e
tests: add test for apps.common.coins 2016-11-15 11:57:18 +01:00
Pavol Rusnak 09c6309ebf
apps.debug: add debug app (that consumes debuglink messages) 2016-11-14 22:13:32 +01:00
Pavol Rusnak 4d167f4961
apps.homescreen: handle Ping message 2016-11-12 15:14:04 +01:00
Pavol Rusnak 72a41182c2
apps.common.storage: fix device_id generator 2016-11-12 15:03:45 +01:00
Jan Pochyla 8754d74620 signtx: do not include change in total 2016-11-11 15:54:38 +01:00
Jan Pochyla 44f6f21186 signtx: add UI similar to trezor1 2016-11-11 14:13:04 +01:00
Jan Pochyla 710cb09663 wallet: add layout_sign_tx
It's now possible to sign transactions through myTREZOR.
2016-11-11 11:27:10 +01:00
Jan Pochyla 2e4c63f836 homescreen: return correct coins in Features 2016-11-11 11:26:38 +01:00
Jan Pochyla 4c056d8aaa wallet: fix layout_get_public_key 2016-11-11 11:22:17 +01:00
Jan Pochyla 90b2f3a3e0 seed: clone node before deriving 2016-11-11 11:21:47 +01:00
Jan Pochyla b9cec468b7 streams: fix set_limit 2016-11-11 11:21:31 +01:00
Jan Pochyla cf2bc1a28e protobuf: fix loading embedded messages 2016-11-11 11:21:18 +01:00
Jan Pochyla 4f8e01c5df signtx: fix address derivation 2016-11-11 11:20:26 +01:00
Jan Pochyla 24d8a04131 signtx: minor refactoring 2016-11-11 11:19:47 +01:00
Jan Pochyla 31e3aaa23b signtx: add UI instructions, SigningError type 2016-11-10 15:37:55 +01:00
Jan Pochyla 8109d8363c signtx: remove BufferWriter 2016-11-10 15:37:55 +01:00
Pavol Rusnak 05e035d56a
apps.fido_u2f: add fastmail to known providers 2016-11-10 13:49:10 +01:00
Pavol Rusnak 3015045df6
apps.common.coins: update to return CoinType, not dict (also modify generator) 2016-11-09 14:46:59 +01:00
Jan Pochyla d7bc138262 signtx: remove forgotten import 2016-11-09 12:36:44 +01:00
Pavol Rusnak c8eb2bf17b
trezor.crypto: prepend recid to ecdsa signatures 2016-11-08 23:10:31 +01:00
Pavol Rusnak 2dc9d6ac4e
sign: inline write_tx_header, write_tx_middle and write_tx_footer functions
they are semantically incorrect and obfuscating what's really being done
2016-11-08 21:06:21 +01:00
Pavol Rusnak 32e699efdb
trezor.crypto.der: convert -> encode
small cleanup to new unit test
2016-11-08 20:25:55 +01:00
Jan Pochyla d2c71b3a58 signtx: add first test, make it all work 2016-11-08 18:50:13 +01:00
Pavol Rusnak 9fb6e328a0
trezor.crypto: add der module 2016-11-08 16:59:08 +01:00
Jan Pochyla 1bb20c2521 signtx: serialize tx meta 2016-11-07 17:00:11 +01:00
Pavol Rusnak 33b5436dcc
tests: move to /tests to avoid freezing 2016-11-06 17:04:25 +01:00
Pavol Rusnak c95ed063db
trezor.crypto.hashlib: remove HashIO (lives as HashWriter somewhere else) 2016-11-06 16:19:25 +01:00
Pavol Rusnak 8092be211c
trezor.messages: regenerate messages 2016-11-06 15:51:52 +01:00