1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-12-27 16:48:09 +00:00
Commit Graph

683 Commits

Author SHA1 Message Date
Pavol Rusnak
c1e1e8bf02
src/apps/common: rewrite cache to use getters/setters 2018-02-09 19:00:09 +01:00
Pavol Rusnak
6fad2f4283
src/apps/homescreen: implement {Initialize,Features}.state field, implement ClearSession handling 2018-02-09 18:08:59 +01:00
Jan Pochyla
e888b6b967 apps/wallet/sign_tx: fix sighash 2018-02-09 14:16:33 +01:00
Jan Pochyla
350de72c54 apps/wallet/sign_tx: force_bip143 2018-02-09 11:37:13 +01:00
Jan Pochyla
d0c742e884 src/apps/common/coins: regenerate 2018-02-09 11:37:13 +01:00
Pavol Rusnak
39576eb2a7
src/main: report device_id as usb serial number 2018-02-07 14:59:09 +01:00
Pavol Rusnak
d5ae4d72b6
src/apps/management: ask for mnemonic words twice in reset_device 2018-02-06 19:40:02 +01:00
Pavol Rusnak
fedfde7e99
src/trezor: refactor format_amount into utils, use it where possible 2018-02-06 18:35:14 +01:00
Pavol Rusnak
340f926804
apps/wallet+apps/ethereum: fix formatting of amounts (avoid using float) 2018-02-06 17:50:36 +01:00
Pavol Rusnak
585e9842f8
src/apps+tests: use TODO consistently across whole codebase 2018-02-06 15:23:51 +01:00
Pavol Rusnak
69344f34b6
apps/common/seed: refactor methods usage 2018-02-06 15:21:27 +01:00
Jan Pochyla
deb64c3c43 ui/passphrase: confirm button, visuals 2018-02-06 14:11:49 +01:00
Jan Pochyla
1c9380a9d9 ui/passphrase: extract new passphrase keyboard 2018-02-06 14:11:49 +01:00
Peter Jensen
7b89e4b14c ui/passphrase: ask for source of passphrase 2018-02-06 14:11:49 +01:00
Jan Pochyla
bd44eceeef apps/wallet: sign & verify message layouts 2018-02-06 14:10:35 +01:00
Pavol Rusnak
8b49e04ade
apps.management: align dots in reset_device 2018-02-05 15:51:03 +01:00
Jan Pochyla
32c74e6e9a apps/management/load_device: fix load_mnemonic 2018-02-05 15:13:48 +01:00
Jan Pochyla
58f48f8ade apps/management/reset_device: fix change_pin 2018-02-05 15:13:33 +01:00
Peter Jensen
f56aaa3b1c ui/pin: check maxlength 2018-02-05 15:06:43 +01:00
Jan Pochyla
5a5842111b apps/management/reset_device: allow to skip backup 2018-02-05 14:54:46 +01:00
Jan Pochyla
e907099be1 apps/common/storage: fix usage of public fields 2018-02-05 13:49:02 +01:00
Jan Pochyla
5f76dc714a apps/management/reset_device: fix display clear, move pin request 2018-02-05 13:49:02 +01:00
Jan Pochyla
a7f011d59e apps/management/reset_device: hold to confirm 2018-02-05 13:49:02 +01:00
Pavol Rusnak
46fc37f977
src: fix flake whitespace issues 2018-02-04 12:18:34 +01:00
Jan Pochyla
7ef79a73fa apps/management/reset_device: retry on wrong word entry 2018-02-02 18:49:57 +01:00
Peter Jensen
b64be539d4 apps/managment/wipe: style btns and elements 2018-02-02 16:27:04 +01:00
Pavol Rusnak
94fc0f7ac0
extmod: if debug build is used, disable LoadDevice, wipe storage on start, draw red square in corner 2018-02-01 15:46:32 +01:00
Jan Pochyla
9c469d583a apps/management/reset_device: split into smaller functions
TODO: device test
2018-01-30 19:24:57 +01:00
Jan Pochyla
710306495e apps: reduce unimport usage
unimport should be used only on the workflow dispatchers.
2018-01-30 18:50:59 +01:00
Pavol Rusnak
5e4b632f14
bootloader: firmware: use "Go to" instead of "Open", because that's what Chrome uses :-/ 2018-01-28 02:43:02 +01:00
Pavol Rusnak
5538614a79
bootloader: rework onboarding 2018-01-24 18:28:10 +01:00
Jan Pochyla
f32e8c50d9 apps/wallet/sign_identity: use secp256k1 by default
Fixes device_tests.test_msg_signidentity
2018-01-23 11:18:31 +01:00
Jan Pochyla
57e350fbbf apps/management/reset_device: minor fixes 2018-01-22 17:53:43 +01:00
Peter Jensen
5701e57b48 apps/management/reset_device: improve visuals 2018-01-22 17:53:43 +01:00
Peter Jensen
f5445d7db9 apps/management/reset_device: adding check for written seed 2018-01-22 17:52:31 +01:00
Peter Jensen
44ca1ea703 apps/management/reset_device: update styles 2018-01-22 17:52:31 +01:00
Peter Jensen
b5220e8675 apps/management/reset_device: add icons and warning 2018-01-22 17:52:31 +01:00
Jan Pochyla
dc7d7bb3bd apps/homescreen: add pin_protection to Features
Fixes WipeDevice test.
2018-01-18 17:45:44 +01:00
Jan Pochyla
db9ac661f9 apps/debug: fix DebugLinkGetState 2018-01-18 17:45:44 +01:00
Jan Pochyla
58c3bba9e2 apps/management/reset_device: fix for new storage 2018-01-16 15:46:32 +01:00
Jan Pochyla
77b78e277a apps/management/recovery_device: adapt for new keyboard 2018-01-16 15:46:32 +01:00
Jan Pochyla
c3fc5c310d apps/common/request_pin: icons 2018-01-16 15:46:32 +01:00
Jan Pochyla
dbed5eade9 ui: add grid function 2018-01-16 15:46:32 +01:00
Peter Jensen
ed9e63142d ui: request_words, keyboard ui 2018-01-16 15:46:32 +01:00
Jan Pochyla
95db112d10 apps/management/recovery_device: mnemonic keyboard 2018-01-16 15:46:32 +01:00
Pavol Rusnak
af93c7299d
apps.ethereum: don't use ButtonRequestType.ConfirmOutput for compatibility with T1 2018-01-11 23:11:13 +01:00
Tomas Susanka
c06ec002a3 ethereum/signing: typo
already tested, tests implemented in the pythontrezor repo
2018-01-11 23:08:35 +01:00
Tomas Susanka
aa8bb77e32 ethereum/signing: display data fix 2018-01-11 23:08:35 +01:00
Tomas Susanka
7d0cafecc3 ethereum/singing: layout seperated 2018-01-11 23:08:35 +01:00
Pavol Rusnak
7d1d6ce393
src: import hexlify explicitly, fix hexlify usage 2018-01-04 13:24:39 +01:00
Pavol Rusnak
d6593e710b
apps.ethereum: implement SignMessage/VerifyMessage 2017-12-23 15:12:31 +01:00
Pavol Rusnak
e47aa9f0c4
apps.ethereum: code cleanup 2017-12-23 14:09:45 +01:00
Tomas Susanka
54fcbb68df HashWriter: getvalue -> get_digest 2017-12-22 17:10:28 +01:00
Tomas Susanka
8880d218b3 HashWriter: extra arguments are passed to the hash function 2017-12-22 17:10:28 +01:00
Tomas Susanka
5bf5d477b9 ethereum/signing: hashwriter is used 2017-12-22 17:10:28 +01:00
Tomas Susanka
688b568bd9 ethereum: files rename 2017-12-22 17:10:28 +01:00
Tomas Susanka
19ef1480d8 common: HashWriter move to common 2017-12-22 17:10:28 +01:00
Tomas Susanka
1f677306a1 ethereum/signing: streaming; all tests passing 2017-12-22 17:10:28 +01:00
Tomas Susanka
47b3baa30a ethereum/signing: all test passing, no data stream 2017-12-22 17:10:28 +01:00
Tomas Susanka
dc02b322bf ethereum/signing: basic structure, first test passing
first commit based on the trezor-mcu repo
eth tokens added using the common ethereum_tokens-gen.py script
first device test passing
2017-12-22 17:10:28 +01:00
Pavol Rusnak
965bf84cdb
tests: cleanup flake8 warnings 2017-12-16 02:11:26 +01:00
Pavol Rusnak
5192387060
src: move show_pin_timeout to trezor.pin 2017-12-15 21:06:29 +01:00
Jochen Hoenicke
c0cd252c83 Store pin as integer
- New module trezor.pin (add timeout here)
- Convert pin to integer by adding a '1' (to detect leading 0s)
- pin is still limited to 9 digits.
2017-12-15 20:37:03 +01:00
Pavol Rusnak
bc6d9b47a3
storage: use one char for value ids 2017-12-14 21:59:47 +01:00
Pavol Rusnak
d1df2c45fa
apps.common: update show_pin_timeout layout 2017-12-14 20:16:05 +01:00
Pavol Rusnak
e8f70ed4af
pin: implement graphics pin timeout 2017-12-14 19:01:41 +01:00
Jochen Hoenicke
87f7054e46 Added callback for PIN timeout
When PIN is entered or changed and their were failed tries the function
waits for time (exponential slow down).  For every second it waits, it
now calls back into python to give it the chance to show a message.

GUI still needs to be implemented
2017-12-14 17:19:51 +01:00
Pavol Rusnak
a56d322eca
storage: add homescreen 2017-12-13 02:41:59 +01:00
Pavol Rusnak
16bc1c6cb6
src: fix flake8 style 2017-12-09 18:38:36 +01:00
Jan Pochyla
757978e1c8 apps/management: fix change_pin 2017-12-08 17:26:51 +01:00
Jan Pochyla
58e4a5546f wallet/signing: implement extra data hashing
TODO: zcash test
2017-12-08 17:25:28 +01:00
Pavol Rusnak
f88080b904
Merge branch 'pin_fails' 2017-12-07 15:29:47 +01:00
Pavol Rusnak
04d980f8f0
add Features.model field (set to "T") 2017-12-04 22:40:42 +01:00
Pavol Rusnak
18fcf826d6
ethereum: implement checksum in ethereum_get_address 2017-12-04 19:28:40 +01:00
Jan Pochyla
69d030a8fa wallet/signing: restrict segwit change output 2017-11-29 13:14:32 +01:00
Pavol Rusnak
ac477b62f8
apps.homescreen: new default homescreen (using display.avatar) 2017-11-27 12:43:49 +02:00
Tomas Susanka
09f18bb444 wallet: tx weight calculator is used to determine fee 2017-11-24 15:02:37 +01:00
Tomas Susanka
272d64b9e8 wallet: tx weight exact calculator 2017-11-24 15:02:37 +01:00
Jan Pochyla
7a0bfd289b wallet/get_address: support segwit 2017-11-23 17:35:31 +01:00
Jan Pochyla
7de6a082d3 wallet/signing: extract addresses.py 2017-11-23 17:30:43 +01:00
Tomas Susanka
65481308e6 wallet/signing: imports fix 2017-11-23 16:45:40 +01:00
Jan Pochyla
165faaeba4 wallet/signing: codestyle 2017-11-23 16:34:19 +01:00
Tomas Susanka
0e2bcd64e8 tests: o.address fix 2017-11-23 16:34:15 +01:00
Tomas Susanka
4fdc389a22 bip143: all inputs (not only segwit ones) are added to bip143 2017-11-23 16:30:11 +01:00
Jan Pochyla
b1164077e9 wallet/signing: add change output restrictions 2017-11-23 16:30:11 +01:00
Tomas Susanka
1d97077343 wallet/signing: typo - hex instead of magic number 2017-11-23 16:30:11 +01:00
Jan Pochyla
f56d39a447 wallet/signing: stream signatures for segwit inputs 2017-11-23 16:30:11 +01:00
Jan Pochyla
5a6b2a5a97 wallet/signing: move default input sequence to sanitizer 2017-11-23 16:30:11 +01:00
Tomas Susanka
aa29667059 common: coins updated 2017-11-23 16:30:11 +01:00
Tomas Susanka
dc6701af90 wallet/signing: native P2WPKH, P2WPKH in P2SH, scripts 2017-11-23 16:30:11 +01:00
Tomas Susanka
b7b46b6980 wallet/signing: amount is checked during witness signature
with test
2017-11-23 16:30:11 +01:00
Tomas Susanka
da4bc2dc8b wallet/signing: P2WPKH in P2SH address generation based on BIP-49, PAYTOP2SHWITNESS output type 2017-11-23 16:30:11 +01:00
Tomas Susanka
b7f01baf99 wallet/signing: refactoring 2017-11-23 16:30:11 +01:00
Tomas Susanka
e63d0adc23 wallet/signing: segwit first test passing 2017-11-23 16:30:11 +01:00
Tomas Susanka
bcef961059 wallet/signing: bip143 transactions hashing 2017-11-23 16:30:09 +01:00
Tomas Susanka
81ec2f3c65 wallet/signing: hash writers and serialization moved to seperate file 2017-11-23 16:18:54 +01:00
Tomas Susanka
039f6bad43 wallet/signing: fee checking seperated 2017-11-23 16:18:54 +01:00
Pavol Rusnak
ba44a21a40
apps/wallet: confirm OP_RETURN on display 2017-11-21 15:57:30 +01:00
Pavol Rusnak
4379f0d031
u2f: show generic icon if specific is not found 2017-11-14 14:28:44 +01:00
mcudev
e3a87b8ea4 firmware: get_entropy text wrapping 2017-11-06 18:03:01 +01:00
Jan Pochyla
8288255048 storage: use new api, remove pin 2017-11-05 21:04:47 +01:00
Pavol Rusnak
af86f57da3
u2f: add bitfinex 2017-11-03 19:06:59 +01:00
Jan Pochyla
278610dce1 apps/homescreen: fix backlight 2017-11-03 11:49:41 +01:00
Jan Pochyla
0d17bc3f94 apps/management: fix reset_device, tune code style 2017-10-31 17:06:35 +01:00
Pavol Rusnak
383b5d7c89
firmware: fix last commit 2017-10-25 20:04:19 +02:00
Pavol Rusnak
e4003700cd
bootloader, firmware: update visuals 2017-10-25 15:20:06 +02:00
Pavol Rusnak
7a4d9a28fd
apps: more u2f apps 2017-10-23 13:57:15 +02:00
Jan Pochyla
3ae6819725 apps/common: experiment with ui.layout 2017-10-10 15:35:01 +02:00
Jan Pochyla
04acab723a trezor/loop: add loop.close() 2017-10-10 15:35:01 +02:00
Jan Pochyla
01ba81f041 apps/homescreen: wait longer
TODO: rework homescreen processes
2017-10-10 11:49:14 +02:00
Jan Pochyla
80a8757740 apps/common/request_pin: request pin on client 2017-10-10 11:49:14 +02:00
Jan Pochyla
4fa5e36053 apps/common/request_pin: test ui.layout 2017-10-09 15:34:55 +02:00
Jan Pochyla
e923b885af fix style 2017-10-03 12:29:46 +02:00
Pavol Rusnak
08bca26841
apps/u2f: add icon for gandi 2017-09-29 18:14:05 +02:00
Arthur Gautier
2b5bfb1990 u2f: Adds Gandi.net as verified app 2017-09-29 18:13:30 +02:00
Peter Jensen
027cc49f47 added icons to buttons 2017-09-26 17:05:53 +02:00
Jan Pochyla
808317424d use trezor.ui.{BG,FG} 2017-09-26 12:05:26 +02:00
Jan Pochyla
305d4d9cc5 trezor/ui/swipe: improve dimming 2017-09-26 12:05:26 +02:00
Jan Pochyla
3379c94598 apps/common/request_pin: add support for 0 2017-09-21 15:57:08 +02:00
Jan Pochyla
f8d961f839 apps/common/request_pin: fix request_pin_on_display 2017-09-21 15:22:50 +02:00
Jan Pochyla
e3a6ef185b apps/debug: add memory_stats 2017-09-21 14:22:06 +02:00
Jan Pochyla
49cc4651c2 bunch of api cleanups 2017-09-19 23:47:35 +02:00
Jan Pochyla
2303acb7a9 apps/homescreen: implement PIng.button_protection 2017-09-06 22:53:48 +02:00
Jan Pochyla
26b5baf657 apps/fido_u2f: fix worfklow api, optimize 2017-09-06 15:43:57 +02:00
Jan Pochyla
b83d2d1166 apps.common.coins: regenerate 2017-08-15 18:14:14 +02:00
Jan Pochyla
1cdfac000a apps.wallet: fix sign_identity 2017-08-15 18:14:14 +02:00
Jan Pochyla
3562ffdc54 wire: pass Context to apps 2017-08-15 18:14:14 +02:00
Jan Pochyla
d2781d030d msg: rename to io 2017-08-15 18:14:14 +02:00
Pavol Rusnak
fe5b5c1940
tests: update to pytest, regenerate protobuf 2017-07-28 18:58:31 +02:00
Jan Pochyla
880faa10b0 usb: use HS_IN_FS
TODO: with more interfaces, static usb state is getting bigger, maybe we should move it to dynamic memory. at the very least, concepts of physical and logical interfaces should be separate
2017-07-12 16:04:03 +02:00
Jan Pochyla
3318ed22f5 trezor.ui.confirm: content is required 2017-06-20 12:03:36 +02:00
Jan Pochyla
c94e02b0eb apps.fido_u2f: more type annotations 2017-06-20 12:03:36 +02:00
Pavol Rusnak
73b2ea6c85
travis: add make style (using flake8) 2017-06-13 19:35:34 +02:00
Jan Pochyla
98e82e3cd5 code style 2017-06-12 18:16:06 +02:00
Pavol Rusnak
845a3a7e0d
tests: add partial pylint support 2017-06-07 19:06:26 +02:00
Jan Pochyla
a18b883249 apps.fido_u2f: remember user confirmation only for 10 secs 2017-06-07 13:55:40 +02:00
Jan Pochyla
a56877bef3 apps.fido_u2f: remove needless async/await 2017-06-07 13:55:40 +02:00
Jan Pochyla
e7ea22839d apps.fido_u2f: recognize bogus app_id 2017-06-06 13:29:26 +02:00
Jan Pochyla
ed8cfe0399 apps.fido_u2f: unify reg/auth state 2017-06-06 13:14:58 +02:00
Jan Pochyla
c4c27de0d5 apps.fido_u2f: remove legacy layout 2017-06-06 13:09:52 +02:00
Jan Pochyla
2bb872ae19 apps.fido_u2f: code style 2017-06-01 12:02:08 +02:00
Jan Pochyla
dc87e14334 trezor.workflow: reset backlight when starting workflow 2017-05-31 19:29:04 +02:00
Jan Pochyla
7783763e92 apps.fido_u2f: workaround for sync send problems 2017-05-31 19:27:47 +02:00
Jan Pochyla
a865c94339 apps.fido_u2f: add WIP ui/button support 2017-05-31 19:16:22 +02:00
Jan Pochyla
d8bb5acb19 apps.fido_u2f: mute verbose logging 2017-05-31 18:40:32 +02:00
Jan Pochyla
7a5377e385 apps.fido_u2f: fix authenticate 2017-05-31 13:15:50 +02:00
Jan Pochyla
36fc87bd46 apps.fido_u2f: first impl of msg_authenticate 2017-05-30 19:08:29 +02:00
Jan Pochyla
479ff127fc apps.fido_u2f: small changes in msg_register 2017-05-30 19:08:29 +02:00
Jan Pochyla
5a41b4497b apps.fido_u2f: fix docs 2017-05-29 17:56:15 +02:00
Jan Pochyla
136514da5c apps.fido_u2f: make register sign with correct privkey 2017-05-29 17:50:36 +02:00
Jan Pochyla
ce915749de apps.fido_u2f: use exact sizes in response descriptor 2017-05-29 17:50:13 +02:00
Jan Pochyla
89e18c4d52 apps.fido_u2f: simulate button press after 2 secs 2017-05-29 17:49:11 +02:00
Jan Pochyla
1a98400ff8 apps.fido_u2f: check apdu length 2017-05-29 17:47:50 +02:00
Jan Pochyla
a1d3eda2ca apps.fido_u2f: return correct cid on chan cancellation 2017-05-29 17:45:15 +02:00
Jan Pochyla
2f40fa5363 apps.fido_u2f: handle init cont frame 2017-05-29 17:43:38 +02:00
Jan Pochyla
9f352959ee apps.fido_u2f: fix data length, handle channel reset 2017-05-23 20:23:44 +02:00
Jan Pochyla
fab5b9a98c apps.fido_u2f: remove exception classes 2017-05-23 15:30:29 +02:00
Jan Pochyla
a015853f85 apps.fido_u2f: add basic handling of REGISTER msg 2017-05-23 12:45:06 +02:00
Jan Pochyla
cb9a856484 apps.common.seed: add get_root_without_passphrase
TODO: decomplect storage/seed/workflows after introducing storage classes (session/request/persistent)
2017-05-23 12:44:36 +02:00
Pavol Rusnak
ae0c5b3cbc
apps.debug implement DebugLinkMemoryRead/Write 2017-05-15 23:10:03 +02:00
Pavol Rusnak
3fcbf7179b
remove trezor.debug usage 2017-05-15 19:12:12 +02:00
Pavol Rusnak
b98c98e6e8
coins: bump bitcoin maxfee 2017-05-13 01:29:49 +02:00
Pavol Rusnak
e3b2001c89
rebuild coins 2017-05-12 22:55:47 +02:00
Pavol Rusnak
16c7284e98
apps.common: introduce cache module instead of caching in global variables 2017-05-09 01:10:45 +02:00
Pavol Rusnak
5e410a3b59
apps.wallet: implement GetEntropy 2017-05-08 22:11:58 +02:00
Pavol Rusnak
e6d93c5933
wallet: fix GetPublicKey msg, regenerate protobuf 2017-05-08 18:04:05 +02:00
Pavol Rusnak
b7c043df66
apps.wallet: fix sign_identity for ed25519 curves 2017-05-03 17:36:27 +02:00
Pavol Rusnak
92b2deb932
coins: add cointype.segwit 2017-04-26 15:46:08 +02:00
Pavol Rusnak
9587563c77
apps.common: update coins 2017-04-25 15:51:59 +02:00
Pavol Rusnak
07693277a4
apps.common: update coins.py + its generator to add new fields 2017-04-24 15:59:30 +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
Peter Jensen
76705dde5b trezor.ui: change failure pin msg 2017-04-06 14:16:48 +02:00
Pavol Rusnak
9257d44b7a
firmware: homescreen shows trezor.io/start when storage not initialized 2017-04-01 23:33:28 +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
36637c23f6 trezor.ui: remove PM colors and other visuals changes 2017-03-27 21:36:17 +02: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
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
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
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
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
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
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
e0dfc2ef03 apps: reflect the wire api changes 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
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
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
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
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
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
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
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
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
Jan Pochyla
1bb20c2521 signtx: serialize tx meta 2016-11-07 17:00:11 +01:00
Pavol Rusnak
c49c4ea29e
apps.common.coins: make coins definitions more readable + adapt generator 2016-11-06 15:50:39 +01:00
Jan Pochyla
44a3b7f9f1 signtx: fixes, refactoring 2016-11-06 14:23:40 +01:00
Jan Pochyla
3b742aa5dc signtx: WIP 2016-11-03 18:56:21 +01:00
Jan Pochyla
6a98aff8bb WIP: signing pseudocode 2016-11-02 01:03:16 +01:00
Pavol Rusnak
54a045e9de
apps.common: add pseudocode for signing 2016-10-31 15:04:13 +01:00
Pavol Rusnak
965a6e653a
apps.common.coins: throw exceptions when coin is not found instead of returning None 2016-10-24 18:27:03 +02:00
Pavol Rusnak
e62e8dbe6f
tools: move coins-gen tool to /tools 2016-10-20 17:07:56 +02:00
Pavol Rusnak
1420ad591b
apps: add apps.common.coins (+generator) 2016-10-20 16:40:57 +02:00
Jan Pochyla
67ac47f087 apps.homescreen: respond with ~correct data, handle GetFeatures 2016-10-20 15:14:40 +02:00
Jan Pochyla
b60206d588 app.management: fix missing icon 2016-10-20 15:14:40 +02:00
Jan Pochyla
7a518e9fa4 seed: add passphrase UI 2016-10-20 15:13:47 +02:00
Jan Pochyla
c5dfcb53d1 apps.wallet: add GetAddress 2016-10-20 15:13:47 +02:00
Jan Pochyla
a44e16a9ca rework high-level storage
We don't use Storage protobuf message anymore, and instead all keys are as granular as possible.

trezor.storage provides high-level function interface.
2016-10-14 15:35:44 +02:00
slush0
cf38b58a73 Reworked homescreen (no blinking, only diming)
Added ui.alert()
2016-10-08 11:47:28 +02:00
chren
cb2399197f fixed wipe device header 2016-10-06 16:35:36 +02:00
chren
5a20a48745 added ui header and icons 2016-10-06 16:17:11 +02:00
Jan Pochyla
abd20741f6 add seed module, GetPublicKey now works 2016-10-06 15:05:14 +02:00
Jan Pochyla
d0bb7edbfa storage: change api to protobuf 2016-10-06 15:05:14 +02:00
Jan Pochyla
6b94511472 LoadDevice: validate mnemonic, import xprv 2016-10-06 15:05:14 +02:00
Jan Pochyla
cc22d59eca ui: clear the screen before common layouts 2016-10-06 15:05:14 +02:00
Pavol Rusnak
2e39c86b42
cleanup 2016-10-05 19:48:08 +02:00
slush0
1840e331bb Moved unused images out of resources 2016-09-29 15:58:21 +02:00
Jan Pochyla
407169af01 import qualified const() 2016-09-29 12:29:43 +02:00
Jan Pochyla
c9fbac7a0b LoadDevice now works 2016-09-28 23:30:33 +02:00
Jan Pochyla
0e799d62af move sub-workflows do apps/common 2016-09-28 23:30:10 +02:00
Pavol Rusnak
ed975398d9
move ui.clear into ui.display.clear 2016-09-28 17:00:27 +02:00
Jan Pochyla
e67037bc4d fix homescreen rotation, revert the logo 2016-09-27 17:41:20 +02:00
Jan Pochyla
35d53ad7fc
simplify the Text interface 2016-09-27 17:26:18 +02:00
chren
fe4e024088
changed homescreen bg 2016-09-27 17:26:17 +02:00
Jan Pochyla
3f4365eda6
add Text, move Loader to ui.loader 2016-09-27 17:26:16 +02:00
Jan Pochyla
0637987c09
change wipe_device to use long-press confirm 2016-09-27 17:26:16 +02:00
chren
4d672fee28
added some backgrounds and change color vars 2016-09-27 17:26:15 +02:00
chren
dbfb06d30e
experimenting with ui in reset_device 2016-09-27 17:26:14 +02:00
chren
cc35a00639
removed old playground and some color changes 2016-09-27 17:26:14 +02:00
Jan Pochyla
e9c7a67c73
make imports more local, remove trezor.workflows, minor tweaks 2016-09-27 17:26:13 +02:00
Jan Pochyla
07dd27c567
get rid of layout stubs 2016-09-27 17:26:12 +02:00
Jan Pochyla
01ac17440d
wipe_device workflow, pin API work 2016-09-27 17:26:12 +02:00
Jan Pochyla
dd713fe6e2
add Storage to reset_device, stub session support in config 2016-09-27 17:26:12 +02:00
Jan Pochyla
34ed2fb86a
workflow monitor, reset_device layout work
- request/response manner of usual protobuf workflows is enforced, workflows are expected to either return a valid protobuf response, or raise an exception
- added wire.FailureError exception that allows workflow to provide Failure code & message
- pin workflows simplified

TODO: all this workflow work does not really belong in trezor.wire
2016-09-27 17:26:11 +02:00
Jan Pochyla
70110187cc
overload __iter__ in loop.Wait
This will automatically exit child tasks in case of close() or throw() on the waiting task, but only if run through `await` or `yield from`
2016-09-27 17:26:11 +02:00
Jan Pochyla
6991286f8b
use __iter__ instead of wait 2016-09-27 17:26:06 +02:00
Jan Pochyla
97d402eba8
unify unimport_func and unimport_gen, asyncify 2016-09-27 17:26:06 +02:00
Jan Pochyla
099767d592
session/workflow overhaul
- lazy loading and importing of protobuf messages
- workflow dispatching through codec pipeline on the first message report

HACK: workflow killing
TODO: cap on concurrent sessions
TODO: ui locking/queuing
TODO: session storage
TODO: tests
2016-09-27 17:26:06 +02:00
Jan Pochyla
312859ba71
add experimental animation with async for 2016-09-27 17:26:03 +02:00
Jan Pochyla
096f3f898f
move pagination primitives to trezor.ui.scroll 2016-09-27 17:26:03 +02:00
Jan Pochyla
455a436123
autopep8 2016-09-27 17:26:02 +02:00
Jan Pochyla
a4d1b27541
test async/await support in homescreen layout 2016-09-27 17:26:02 +02:00
Pavol Rusnak
545e93d1b4
add layout to u2f app 2016-09-27 17:26:01 +02:00
Pavol Rusnak
cd28103b75
add bitbucket/gitlab to known u2f apps 2016-09-27 17:26:01 +02:00
Pavol Rusnak
6402b3d232
update slush pool logo 2016-09-27 17:26:00 +02:00
Pavol Rusnak
ce734df1b0
add u2f icons, remove toig/toif from assets 2016-09-27 17:26:00 +02:00
Jan Pochyla
ae4540c59b
introduce generic swipe container to reset_device
Now its possible to block multiple generators on one interface.
2016-09-27 17:26:00 +02:00
slush0
7aaba5c6ce
Added u2f hash for Slush Pool 2016-09-27 17:26:00 +02:00
chren
53a6132ed8
tests with UI and minor changes in scroll component 2016-09-27 17:25:59 +02:00
chren
be01cee8d3
added loading layout playground 2016-09-27 17:25:59 +02:00
chren
16f81c3264
added dummy scroll down icon with animation 2016-09-27 17:25:59 +02:00
chren
fed9309ffa
added playground of scrollicon 2016-09-27 17:25:59 +02:00
Pavol Rusnak
d3d21bdbbd
remove main_stick and company 2016-09-27 17:25:58 +02:00
chren
771372adb2
replace scrolling to componenet, added mockup for recovery device layout 2016-09-27 17:25:58 +02:00
chren
887c877567
paging "scrollbar" 2016-09-27 17:25:58 +02:00
chren
cb2027ad86
added button to finish [tbd] 2016-09-27 17:25:57 +02:00
chren
7237321470
fix pagination of seed 2016-09-27 17:25:57 +02:00
chren
cd35a592a1
fix way of scrolling 2016-09-27 17:25:57 +02:00
chren
e8601232e8
fixed img url, added img to local res folder 2016-09-27 17:25:57 +02:00
chren
2482d3935d
sign message layout 2016-09-27 17:25:56 +02:00
Jan Pochyla
6c0970df9e
remove apps/seed example 2016-09-27 17:25:55 +02:00
Jan Pochyla
9f0b27f597
add ResetDevice workflow 2016-09-27 17:25:55 +02:00
chren
398e46e9ff
signTx example layout 2016-09-27 17:25:54 +02:00
chren
cefccb91d8
wipe device screen layout 2016-09-27 17:25:54 +02:00
chren
cd80509f06
seed static mockup 2016-09-27 17:25:53 +02:00
chren
bed2d4d50e
change backlight to white and seed mockup 2016-09-27 17:25:53 +02:00
Pavol Rusnak
5b6ab9ca96
small fixes; res contains just toig/toif files (png are in /assets) 2016-09-27 17:25:53 +02:00
chren
0e8d7a5d6c
add static seed layout 2016-09-27 17:25:52 +02:00
chren
4852609efb
added clear display to pin dialog 2016-09-27 17:25:52 +02:00
Jan Pochyla
377fffa5a5
add wipe, wire.write is a generator, add trezor/workflows 2016-09-27 17:25:50 +02:00
Pavol Rusnak
c08c4cd386
fix trezor.res 2016-09-27 17:25:49 +02:00
Pavol Rusnak
7e8e0e3439
add fido_u2f app skeleton 2016-09-27 17:25:49 +02:00
Jan Pochyla
9232c77529
PinDialog -> PinMatrix, shuffle digits 2016-09-27 17:25:48 +02:00
Jan Pochyla
6a647b124d
add management app skeleton and ConfirmDialog
We might rewrite PinDialog as a content for ConfirmDialog in the
future. Also, I'm beginning to hit memory issues on a 64-bit system.
2016-09-27 17:25:47 +02:00