1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-12-23 23:08:14 +00:00
Commit Graph

489 Commits

Author SHA1 Message Date
Pavol Rusnak
c115faf2cd
embed/trezorhal/usb: correct handling of interface messages in usb_class_setup 2018-02-12 18:25:13 +01:00
Pavol Rusnak
7b2fd6ae4c
embed/bootloader: move Welcome! string 5px above 2018-02-12 14:57:50 +01:00
Pavol Rusnak
936f0e3e26
embed: fix 3 TODO items 2018-02-12 14:51:41 +01:00
Pavol Rusnak
8a409bd99a
embed/bootloader: move USB_IFACE_NUM to main.c 2018-02-12 14:44:09 +01:00
mcudev
0a15b03917 bootloader: fix process_msg_unknown remaining chunk calculation 2018-02-12 14:40:50 +01:00
Pavol Rusnak
34c6fb987a
embed/bootloader: better detection of broken firmware at start 2018-02-10 17:52:45 +01:00
Pavol Rusnak
9aa947d2e1
embed/extmod/modtrezorcrypto: remove redundant code in bip32 2018-02-09 12:33:55 +01:00
Pavol Rusnak
593ccdafec
embed/extmod/modtrezorcrypto: use uint32_t for HDNode int attributes 2018-02-09 12:22:23 +01:00
Pavol Rusnak
2fe0ce542f
firmware: introduce PYOPT, use it consistently in mpy-cross and in runtime, set it to 1 by default 2018-02-08 18:04:10 +01:00
Pavol Rusnak
fa697ba322
embed/vendorheader: add unsafe_signed_prod, use it by default 2018-02-08 16:45:23 +01:00
Pavol Rusnak
77ea31aa8a
embed/extmod/modtrezorui: revert NO_HINT change 2018-02-08 15:04:33 +01:00
Pavol Rusnak
329b7d1488
embed/extmod/modtrezorui: regenerate fonts with NO_HINTING, update rendering to subpixel precision 2018-02-07 19:33:39 +01:00
Pavol Rusnak
a25af7d22a
embed/extmod/modtrezorui: refactor text bar prefill into from display.c into extmod 2018-02-06 22:55:20 +01:00
Pavol Rusnak
47c598b56e
embed/bootloader: don't show build field in version (stick to major.minor.patch) 2018-02-06 17:18:37 +01:00
Pavol Rusnak
1c5beb1c12
embed/bootloader: add information about firmware (version, vendor, etc.) to Features message 2018-02-06 17:06:43 +01:00
Pavol Rusnak
548b8cb25b
embed/trezorhal: move cmd_buffer into usb_vcp_state_t 2018-02-06 15:30:15 +01:00
Jan Pochyla
00c4da83b9 modtrezorconfig: fix has_pin 2018-02-05 15:36:59 +01:00
Pavol Rusnak
e865012663
bootloader: use webusb by default 2018-02-03 16:40:52 +01:00
Pavol Rusnak
40e20e2e9d
trezorhal: fix usb class behaviour 2018-02-03 16:40:51 +01:00
Pavol Rusnak
61b4e3d6e3
trezorhal: fix typos 2018-02-02 17:41:49 +01:00
Pavol Rusnak
b8b8e38765
trezorhal: rename winusb_enabled to usb21_enabled 2018-02-02 16:02:37 +01:00
Pavol Rusnak
4f44c2577b
trezorhal: add option to programatically enable/disable WinUSB 2018-02-02 15:27:04 +01:00
Pavol Rusnak
d1b5a254ef
prodtest: bump release_num in usb 2018-02-02 13:11:03 +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
Pavol Rusnak
1e03a5d554
unix: start udp port for each active hid/webusb interface 2018-02-01 14:22:24 +01:00
Pavol Rusnak
db71afca60
prodtest: use different release_num 2018-02-01 10:13:40 +01:00
Pavol Rusnak
488e516cbf
trezorhal: add device_class, etc. to usb object 2018-01-31 16:46:15 +01:00
Pavol Rusnak
52a942afd4
bootloader: fix anti-aliasing in install icon 2018-01-31 16:46:15 +01:00
Pavol Rusnak
cf9c97288e
build: rework vendorheader handling, move them to embed/vendorheader 2018-01-31 16:46:15 +01:00
Pavol Rusnak
bfa79cbfd3
firmware: update versions in version.h 2018-01-29 09:09:45 +01:00
Pavol Rusnak
ebc585fd40
trezorhal: fix bug in flash_otp_write 2018-01-29 08:44:55 +01:00
Pavol Rusnak
1bf278c3ee
firmware: add vendorheader_sl_signed.bin 2018-01-29 08:14:08 +01:00
Pavol Rusnak
c934109d65
boardloader, bootloader: bump versions to 2.0 2018-01-28 16:56:05 +01:00
Pavol Rusnak
0b4c703813
bootloader: update booting ui 2018-01-28 13:47:03 +01:00
Pavol Rusnak
1b712a0446
trezorhal: fix simple interface behaviour on windows 2018-01-28 02:43:03 +01:00
Pavol Rusnak
399d6d2f65
trezorhal: make webusb more robust 2018-01-28 02:43:03 +01:00
Pavol Rusnak
08c145c4da
trezorhal: fix winusb 2018-01-28 02:43:02 +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
ba8224f598
trezorhal: remove configuration from usb string table 2018-01-28 02:43:00 +01:00
Pavol Rusnak
55d0416641
trezorhal: make usb stack more robust 2018-01-27 17:27:57 +01:00
Pavol Rusnak
d6681efff2
trezorhal: update usb maxpower 2018-01-26 17:11:52 +01:00
Pavol Rusnak
efd926208d
bootloader: refactor version formatting into format_ver 2018-01-26 16:05:45 +01:00
Pavol Rusnak
c0220192d4
tools: fix binctl script 2018-01-26 15:51:19 +01:00
Pavol Rusnak
0d7f486733
bootloader: show different dialogs for firmware upgrade and vendor change 2018-01-26 15:51:19 +01:00
Pavol Rusnak
6e81a68fbe
bootloader: refactor flash erase after first chunk is received 2018-01-26 15:51:19 +01:00
Pavol Rusnak
739e4f2e45
fix release_num values 2018-01-25 17:46:29 +01:00
Pavol Rusnak
b785fcce44
bootloader: revert ui color change 2018-01-25 16:43:54 +01:00
Pavol Rusnak
a9f5ed9119
trezorhal: remove unnecessary casting for vstr, small ui nitpicks 2018-01-25 16:29:05 +01:00
Pavol Rusnak
1280073c04
trezorhal: remove unnecessary casting for usb strings 2018-01-25 15:34:45 +01:00
Pavol Rusnak
d39ceb0d99
bootloader: fix ui_screen_done flicker 2018-01-25 14:44:03 +01:00
Pavol Rusnak
d27111472e
bootloader: show fingerprint on info click 2018-01-25 14:16:21 +01:00
Pavol Rusnak
8fc65d7f32
bootloader: small UI nitpicks 2018-01-25 13:21:04 +01:00
Pavol Rusnak
117a3efbe2
bootloader: refactor fadeins/fadeouts 2018-01-25 12:33:09 +01:00
Pavol Rusnak
5538614a79
bootloader: rework onboarding 2018-01-24 18:28:10 +01:00
Pavol Rusnak
2e00c090b6
bootloader: add confirm dialogs for wipe/upgrade 2018-01-24 17:00:25 +01:00
Pavol Rusnak
ae94bc95fb
bootloader: add "connect to host" screen 2018-01-24 14:22:57 +01:00
Pavol Rusnak
8ef2098763
trezorhal: unix: refactor touch get/pack functionality 2018-01-24 13:41:02 +01:00
Pavol Rusnak
2f567ee822
bootloader: rework UI 2018-01-24 12:47:55 +01:00
Pavol Rusnak
f6f6e8593a
bootloader: don't crash on empty usb queue 2018-01-24 00:37:58 +01:00
Pavol Rusnak
9fcb59c3ca
trezorhal: reply with winusb guid just for interface 0 2018-01-24 00:37:58 +01:00
Pavol Rusnak
ca0918dbce
trezorhal: rework winusb 2018-01-24 00:37:54 +01:00
Pavol Rusnak
00c193f5cc
trezorhal, unix: drop flash_write_{byte,word} usage, rename flash_write_{byte,word}_rel to flash_write_{byte,word} 2018-01-23 16:58:53 +01:00
Pavol Rusnak
1e7920435c
bootloader: fix flashing of non-continous firmware areas 2018-01-23 16:58:53 +01:00
Pavol Rusnak
089168209b
trezorhal: fix webusb landing page 2018-01-23 02:32:48 +01:00
Pavol Rusnak
919e2b9c3b
trezorhal: formatting nits in usb 2018-01-23 02:32:48 +01:00
Pavol Rusnak
9f80d5614a
trezorhal: add winusb magic to webusb interface 2018-01-21 15:40:31 +01:00
Pavol Rusnak
f50afd2d2a
bootloader: add (optional) WebUSB support 2018-01-21 04:04:33 +01:00
Pavol Rusnak
5ef0967857
trezorhal: small fixes to USB stack 2018-01-21 03:54:08 +01:00
Pavol Rusnak
aa8c192040
trezor.io: remove unused fields from WebUSB class 2018-01-21 00:49:09 +01:00
Pavol Rusnak
8bf19b4c92
trezorhal: refactor trezor.io USB stuff into more files, add WebUSB 2018-01-21 00:04:05 +01:00
Pavol Rusnak
d927b80b50
trezorhal: more tests in usb 2018-01-20 22:06:39 +01:00
Pavol Rusnak
51db0c4099
fix typo 2018-01-20 22:02:13 +01:00
Pavol Rusnak
311af09236
trezor.io: fix typo in VCP class 2018-01-20 22:00:16 +01:00
Pavol Rusnak
9d10a7a508
trezorhal: more switch formatting 2018-01-20 21:57:10 +01:00
Pavol Rusnak
30ff61b588
trezorhal: add configuration, interface strings to usb descriptors, minor typos 2018-01-20 21:48:53 +01:00
Pavol Rusnak
08376a4a54
fix typo 2018-01-20 21:26:54 +01:00
Pavol Rusnak
e92440dfc8
introduce and use memzero instead of explicit_bzero 2018-01-18 15:30:49 +01:00
Pavol Rusnak
3098dc8447
unix: don't use usb_hid_write from usb_hid_read for PING/PONG 2018-01-17 23:40:24 +01:00
Pavol Rusnak
fea8d53b85
trezor.io: cleanup usb code 2018-01-17 16:10:31 +01:00
Pavol Rusnak
ea116d742a
use explicit_bzero where possible; update trezor-crypto 2018-01-16 20:44:21 +01:00
Jan Pochyla
2c3df7381f unix/usb: fix wur 2018-01-16 15:46:32 +01:00
Jan Pochyla
20c4900df1 modtrezorcrypto/bip39: throw less exceptions 2018-01-16 15:46:32 +01:00
Pavol Rusnak
27d9abe883
trezor.config: add public values (readable without unlock)
They are indicated via MSB bit of appid
2018-01-13 16:09:22 +01:00
Pavol Rusnak
1530afe4ad
vendor: update trezor-crypto, adapt codebase to changes 2018-01-13 15:36:03 +01:00
Pavol Rusnak
d11bbde2e1
trezor.crypto: fix sha3-{256,512} argument handling 2018-01-12 13:50:34 +01:00
Pavol Rusnak
7efef68e97
trezor.crypto: add static keyword to crc 2018-01-12 13:43:52 +01:00
Pavol Rusnak
ee925f7813
prodtest: draw border on start too 2018-01-09 21:21:55 +01:00
Jan Pochyla
622cb847e5 prodtest: fix touch coordinates 2018-01-09 15:28:11 +01:00
Pavol Rusnak
7537c26c83
trezor.crypto: use mp_obj_new_str_from_vstr where we already have preallocated vstr 2018-01-07 13:56:18 +01:00
Pavol Rusnak
981ec87877
trezor.crypto: put back vstr where it makes sense (= user controlled input) 2018-01-05 13:13:20 +01:00
Pavol Rusnak
4a7592d470
trezor.crypto: remove vstr usage, refactor mp_obj_new_str_from_vstr into mp_obj_new_bytes and mp_obj_new_str 2018-01-03 21:53:58 +01:00
Pavol Rusnak
b98a1db6ee
embed: cleanup unused modules 2018-01-02 20:00:12 +01:00
Pavol Rusnak
fa95f0a037
trezor.crypto: implement chacha20poly1305 aka rfc7539 2018-01-02 18:57:23 +01:00
Pavol Rusnak
b9d5af8c19
modtrezorcrypto: remove ssss (different implementation will be re-added later) 2018-01-02 14:13:42 +01:00
Pavol Rusnak
4cc8a5432d
bootloader: use normal/regular font rather than bold 2018-01-02 01:44:39 +01:00
Pavol Rusnak
94588dd588
modtrezorui: introduce TREZOR_FONT_PREFILL, set it to 0 in bootloader 2018-01-02 01:37:31 +01:00
Pavol Rusnak
424115967f
embed: fix wur for usb functions 2018-01-01 21:49:08 +01:00
Pavol Rusnak
f1a75b36f7
vendor: update micropython to 1.9.3 release 2018-01-01 21:49:08 +01:00
Pavol Rusnak
d6593e710b
apps.ethereum: implement SignMessage/VerifyMessage 2017-12-23 15:12:31 +01:00
Pavol Rusnak
333c0a633a
trezor.crypto: adopt crc32 function 2017-12-19 21:54:22 +01:00
Pavol Rusnak
eff3ce2aa8
unix: use ensure, not (void) 2017-12-19 19:42:56 +01:00
Jan Pochyla
7be96048f8 unix: fix wur in usb 2017-12-19 15:13:12 +01:00
Pavol Rusnak
4b54bfbbf2
modtrezorui: change loader size to 120x120 2017-12-16 23:44:30 +01:00
Pavol Rusnak
63e999ab84
trezor.ui: introduced minwidth to display.text functions; more optimizations 2017-12-16 19:33:09 +01:00
Pavol Rusnak
47f5cba439
flash/sdcard: introduce wur, simplify code 2017-12-16 18:42:06 +01:00
Pavol Rusnak
5e93cca0a9
WIP 2017-12-16 17:54:12 +01:00
Jochen Hoenicke
beef9ecfb5 Moved flash_unlock to norcow_update
and fixed propagation of error return
2017-12-16 17:25:41 +01:00
Pavol Rusnak
6aae87437f
modtrezorui: draw bars under letters 2017-12-16 17:22:03 +01:00
Pavol Rusnak
11a3ff055c
boardloader/bootloader: typo 2017-12-16 15:12:58 +01:00
Pavol Rusnak
4584861385
trezor.ui: introduce ui.SIZE 2017-12-16 14:50:28 +01:00
Pavol Rusnak
79a3f84c3c
modtrezorui: invert FONT macro inclusion logic 2017-12-15 23:13:25 +01:00
Pavol Rusnak
80707f195b
modtrezorui: small cleanup 2017-12-15 23:03:18 +01:00
Pavol Rusnak
7504366a02
bootloader: simplify vtrust code 2017-12-15 20:57:54 +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
125ab8471c
trezorhal: store image fingerprint in the image_header structure 2017-12-15 19:22:59 +01:00
Pavol Rusnak
be302480fd
modtrezorcrypto: cleanup random 2017-12-15 16:56:08 +01:00
Pavol Rusnak
1a32e46e5d
bootloader: cleanup ui code 2017-12-15 15:26:36 +01:00
Pavol Rusnak
5e476b856e
unix: implement sdcard, add unit test 2017-12-15 01:00:00 +01:00
Pavol Rusnak
48ef409fdb
modtrezorio: remove mocks 2017-12-15 00:06:09 +01:00
Pavol Rusnak
b4933f969e
bootloader: don't downgrade firmware below fix_version in the current firmware 2017-12-14 21:58:32 +01:00
Pavol Rusnak
965aa73b63
trezorhal: introduce fix_version in image header (version of last critical bugfix) 2017-12-14 21:29:13 +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
Jochen Hoenicke
9f2bbb0e1a Removed references to pin fail area 2017-12-14 17:18:45 +01:00
Jochen Hoenicke
497021f2ef storage: New pin fail section inside NORCOW
Added a function to update NORCOW data.
Changed storage pin fail logic.
2017-12-14 17:18:45 +01:00
Pavol Rusnak
b7444ac13e
modtrezorconfig: fix wipe error 2017-12-14 16:27:18 +01:00
Pavol Rusnak
2f719526e7
bootloader: implement vendor keys lock 2017-12-13 23:08:15 +01:00
Pavol Rusnak
45c290d24c
trezorhal: introduce vendor_keys_hash, use it in compare_to_current_vendor_header 2017-12-13 22:50:48 +01:00
Pavol Rusnak
70ac202d7a
modtrezorcrypto: add trezor.crypto.hashlib.blake256 2017-12-13 20:47:12 +01:00
Pavol Rusnak
34322d5fb6
firmware: enable stack protector (except nlr stuff) 2017-12-13 02:06:22 +01:00
Pavol Rusnak
1aba175d7d
build: adapt to new trezor-crypto changes 2017-12-12 22:00:15 +01:00
Pavol Rusnak
7b9fcf98ae
drop embed/extmod/modtrezorcrypto/trezor-crypto symlink 2017-12-12 20:31:03 +01:00
Jochen Hoenicke
816bfe387f Bug fix: missing parenthesis in flash_write_word 2017-12-12 00:01:49 +01:00
Pavol Rusnak
20a1326ebb
storage: fix typo 2017-12-11 23:11:43 +01:00
Pavol Rusnak
ce3eaba925
trezorhal: use static inline instead of static (gcc 7.2 workaround) 2017-12-11 22:34:45 +01:00
Pavol Rusnak
8a8450d6be
fix build for older compilers 2017-12-09 18:18:42 +01:00
Pavol Rusnak
e268aeb8b7
flash: simplify/unify flash_erase_sectors usage 2017-12-09 18:00:37 +01:00
Pavol Rusnak
6ab0f03ec4
embed: norcow_init, storage_init and flash_init don't return secbool, they halt using ensure if something goes wrong 2017-12-09 14:48:49 +01:00
Pavol Rusnak
6b94fd26e4
boardloader: rename reset_flags_init to reset_flags_check 2017-12-09 14:36:02 +01:00
Jan Pochyla
314e6a99c1 modtrezorcrypto/bip32: add HDNode.__init__ 2017-12-08 17:25:28 +01:00
Pavol Rusnak
626a8885ce
trezor.config: add compaction test 2017-12-08 16:46:13 +01:00
Pavol Rusnak
b39b4a4947
norcow: fix bug 2017-12-08 16:17:58 +01:00
Pavol Rusnak
7f5192701f
unix: use mmap to access flash file 2017-12-08 14:18:15 +01:00
Pavol Rusnak
44a11fa3ef
norcow: introduce NORCOW_MAGIC 2017-12-08 13:42:17 +01:00
Pavol Rusnak
38e3088325
common: don't expose shutdown() via common.h 2017-12-08 12:42:43 +01:00
Pavol Rusnak
f88080b904
Merge branch 'pin_fails' 2017-12-07 15:29:47 +01:00
Pavol Rusnak
40104822e8
unix: make SDL failures fatal 2017-12-07 12:44:38 +01:00
Pavol Rusnak
04d980f8f0
add Features.model field (set to "T") 2017-12-04 22:40:42 +01:00
Jan Pochyla
8b85078730
reflash: add new firmware target
Flashes (unlocked) boardloader and bootloader from pre-compiled sdcard image.
2017-11-28 20:59:32 +01:00
Jan Pochyla
09af312789 prodtest: add BORDER command 2017-11-27 13:19:22 +01:00