Commit Graph

369 Commits

Author SHA1 Message Date
Pavol Rusnak 1234ab94d4
update trezor-crypto 2016-10-06 17:01:17 +02:00
Jochen Hoenicke a0ade6343e Reworked rfc6979 signing. (#116)
New parameter is_canonical that allows for generating signatures that
have additional requirements.
2016-10-06 16:58:05 +02:00
Pavol Rusnak d7ff70caf6
add checking of buttons to bootloader 2016-10-06 15:03:11 +02:00
Jochen Hoenicke d767e52055 Confirm to change U2F counter (#114) 2016-09-27 23:33:28 +02:00
Pavol Rusnak 9fe9ebc990
fix usb descriptor in bootloader 2016-09-26 14:57:10 +02:00
Pavol Rusnak 2f7ed2aa0f
implement firmware_present flag in bootloader 2016-09-26 13:09:18 +02:00
Pavol Rusnak cda9ae4b29
change version description in bootloader 2016-09-25 16:36:44 +02:00
Pavol Rusnak dc8348b4a0
add flash target to bootloader makefile 2016-09-25 16:04:07 +02:00
Pavol Rusnak 259eeae26e
don't halt on broken firmware but stay in bootloader mode 2016-09-25 15:52:39 +02:00
bitcartel e0e190b3dc
Update coins.c for Zcash mainnet (#111) 2016-08-31 14:02:53 +02:00
Pavol Rusnak 8d7c1ec543 Merge pull request #110 from jhoenicke/master
More alignment fixes
2016-08-30 12:55:37 +02:00
Jochen Hoenicke 6d65551b82
More alignment fixes 2016-08-30 12:39:37 +02:00
Pavol Rusnak dec9484a17
update version 2016-08-30 10:33:13 +02:00
Pavol Rusnak fd79570aaf
fix unaligned access in serialno; update trezor-crypto 2016-08-29 22:37:27 +02:00
Pavol Rusnak d7c0fbc379
add const where possible (for message parsing) 2016-08-29 22:36:18 +02:00
Pavol Rusnak aaf2631dd6
sign firmware inside docker container 2016-08-29 19:20:50 +02:00
Pavol Rusnak 0a55a9e415
update to nanopb 0.2.9.3 2016-08-29 12:59:29 +02:00
Pavol Rusnak fff16e813a
add link to protobuf definition in coins.c 2016-08-29 10:44:40 +02:00
Pavol Rusnak 6f342816e1 Merge pull request #108 from jhoenicke/fastspi
Faster SPI communication
2016-08-29 10:39:09 +02:00
Jochen Hoenicke 5dae02bbbf
Faster SPI communication
According to specs, the display can handle up to 10 MHz SPI traffic
(minimum cycle time is 100 ns). This patch sets the SPI port to
7.5 MHz (60 MHz clock with divisor 8).  In my tests the display works
even fine with SPI frequency at 60 MHz.  I also minimized the delays
(the spec doesn't require a long setup time) and use the registers to
check when transfer is done instead of using a fixed delay.

This patch also changes the swipe function to swipe pixel by pixel.
Otherwise, the swipe would happen too fast to be seen.

This changes the display update time from 11 ms to 1.5 ms.
2016-08-26 18:43:16 +02:00
Pavol Rusnak 4c379e36ec Merge pull request #103 from axic/ethereum
Implement Ethereum support
2016-08-26 11:01:45 +02:00
Jochen Hoenicke bc55013942
Simplified one-byte encodings 2016-08-25 13:02:14 +02:00
Jochen Hoenicke 91dcead35e
Gas estimate screen, tweaked display of value 2016-08-23 22:05:24 +02:00
Jochen Hoenicke a37a2e3612
Confirm data, streamlining code
Set all size fields to 0, if fields was not given to avoid the conditions
later.

Display data and ask for confirmation.
2016-08-22 23:18:38 +02:00
Jochen Hoenicke 05a73593f6
No special case encoding for '\x0', cleanups
The encoding for data '\x00' was tested here:
http://testnet.etherscan.io/tx/0x05d6f97de3ecd33ad4059fa9bd342a10ef99d580a2d881b0c5a0c9e8c55ff975
2016-08-19 23:35:11 +02:00
Jochen Hoenicke 22d0e7a053 Incorporated changes for updated master 2016-08-19 03:16:59 +01:00
Pavol Rusnak efd443abe8 implement ethereum signing check 2016-08-19 03:14:38 +01:00
Pavol Rusnak 4e0a69b6ea refactor ethereum methods, show progress properly 2016-08-19 03:14:38 +01:00
Pavol Rusnak 1558d77ea0 split rlp_encode_length into rlp_encode_length and rlp_encode_list_length 2016-08-19 03:14:38 +01:00
Pavol Rusnak 3db323c599 fix printing of ethereum value and address 2016-08-19 03:14:38 +01:00
Pavol Rusnak 3d1ab24d92 simplify ethereum code, EthereumSignTx.data_length is the total length now 2016-08-19 03:14:38 +01:00
Pavol Rusnak 48008ddd8e implement layoutEthereumConfirmTx 2016-08-19 03:14:38 +01:00
Pavol Rusnak 7d9a56e678 fix curly braces in if statements 2016-08-19 03:14:38 +01:00
Nick Johnson 4a195ebd86 Don't include 0x in address display, so everything fits 2016-08-19 03:14:38 +01:00
Alex Beregszaszi 7432805b6a Fix special RLP case for length=1 firstbyte=0 2016-08-19 03:14:38 +01:00
Alex Beregszaszi 079d282541 Simplify send_request_chunk() 2016-08-19 03:14:38 +01:00
Alex Beregszaszi 78b1370de9 More input sanity checks in EthereumSignTx 2016-08-19 03:14:38 +01:00
Alex Beregszaszi a617200c9c Add confirmation dialog to EthereumSignTx 2016-08-19 03:14:38 +01:00
Alex Beregszaszi e0a1743003 Add sanity checks for data fields in EthereumSignTx 2016-08-19 03:14:38 +01:00
Alex Beregszaszi ab49a7cb45 Calculate data length based on the initial chunk and the supplied length 2016-08-19 03:14:38 +01:00
Alex Beregszaszi e0395b13eb Fix RLP length calculation 2016-08-19 03:14:38 +01:00
Alex Beregszaszi 2b6c991179 Split out send_signature and support short requests 2016-08-19 03:14:38 +01:00
Alex Beregszaszi 1d2f9b6ecd Initial signing implementation for Ethereum 2016-08-19 03:14:38 +01:00
Alex Beregszaszi a9449520b8 Ethereum signing skeleton 2016-08-19 03:14:38 +01:00
Alex Beregszaszi 9c7e41f15b Reorder fsm.c for logical grouping of signing methods 2016-08-19 03:14:38 +01:00
Nick Johnson a031b79e24 Add sha3.o to OBJS 2016-08-19 03:14:38 +01:00
Nick Johnson 352d296f77 Return the correct MessageType from EthereumGetAddress 2016-08-19 03:14:38 +01:00
Alex Beregszaszi 3c2d9111e2 Implement EthereumGetAddress 2016-08-19 03:14:38 +01:00
Alex Beregszaszi bf465357ee Include placeholder handlers for the Ethereum protocol 2016-08-19 03:14:38 +01:00
Pavol Rusnak c29457337b Merge pull request #100 from schinzelh/patch-1
add python-ecdsa dependency
2016-07-31 20:11:20 +02:00