1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2025-01-07 05:51:38 +00:00
Commit Graph

9423 Commits

Author SHA1 Message Date
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
Karel Bílek
7237cefbb4 Add null to allow electron apps (#20)
Electron discussion there

https://github.com/electron/electron/issues/7931 

It seems `Origin: 'null'` from electron apps is a feature, not a bug
2016-11-10 18:20:39 +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
f45454b5ce
u2f: add fastmail to known providers 2016-11-10 13:46:41 +01:00
Jochen Hoenicke
9287dd7e04
Poll USB during BIP39 derivation.
This patch adds calls to usbPoll in the progress callback.  This
should address #98.

We call usbDelay instead of Poll, to call usbd_poll several times.
Otherwise it would only handle one event instead of handling all
events that were pending so far.  The ugly magic number 5 is a guess.

Note that we also need to set usbTiny, so that we don't recursively
process messages.  Since we don't know whether usbTiny is set, we
need to store the old value (especially true for u2f).

This fix also relies on another fix in libopencm3.
2016-11-09 16:17:50 +01:00
Pavol Rusnak
4ce4cc5605
halt the device when encountered an invalid mnemonic (skip if device loaded or recovered without enforced wordlist) 2016-11-09 16:06:50 +01:00
Pavol Rusnak
105b9c8167
tools: simplify coins-gen.py 2016-11-09 14:52:43 +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
Pavol Rusnak
d1bfc76d91
tools: fix signtest.py 2016-11-09 12:39:25 +01:00
Jan Pochyla
25ab4dd2ea signtx: clean up test 2016-11-09 12:36:44 +01:00
Jan Pochyla
d7bc138262 signtx: remove forgotten import 2016-11-09 12:36:44 +01:00
Pavol Rusnak
b0fa0466dc
trezor.crypto.curve: implement verify_recover function for ecdsa 2016-11-08 23:52:04 +01:00
Pavol Rusnak
c8eb2bf17b
trezor.crypto: prepend recid to ecdsa signatures 2016-11-08 23:10:31 +01:00
Pavol Rusnak
a31dba225e
test: add test for trezor.config.wipe 2016-11-08 21:34:52 +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
Pavol Rusnak
b3bc71c481
tests: extract micropython binary to variable in run_tests.sh 2016-11-08 19:05:20 +01:00
Jan Pochyla
d2c71b3a58 signtx: add first test, make it all work 2016-11-08 18:50:13 +01:00
Jan Pochyla
b20e62ffa8 update submodule trezor-crypto 2016-11-08 18:50:13 +01:00
Pavol Rusnak
4cd2d1eb13
readme: small changes 2016-11-08 18:35:01 +01:00
Pavol Rusnak
2d0675341b
trezor.crypto: use 64-byte ecdsa signatures (for now) 2016-11-08 18:33:03 +01:00
Pavol Rusnak
9fb6e328a0
trezor.crypto: add der module 2016-11-08 16:59:08 +01:00
Pavol Rusnak
810d478f4c
check return values of ecdsa_sign calls 2016-11-08 15:48:44 +01:00
Pavol Rusnak
8d1109986c
trezor.crypto: curve.nist256p1 and curve.secp256k1 now sign/verify 256-bit digests, not arbitrary length messages 2016-11-08 15:38:45 +01:00
Pavol Rusnak
046ced3f81
rework txapi class to use local cache, add txcache fixtures 2016-11-08 15:07:58 +01:00
Jan Pochyla
1bb20c2521 signtx: serialize tx meta 2016-11-07 17:00:11 +01:00
Pavol Rusnak
0012883984
trezor.ui.display: fix orientation/backlight calls when NOUI=1 is used 2016-11-06 18:14:23 +01:00
Pavol Rusnak
161bb90e03
tests: add tests for trezor.msg and trezor.ui.display 2016-11-06 17:39:30 +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
Jan Pochyla
f9827666f8 modtrezorcrypto: fix last commit 2016-11-06 16:06:29 +01:00
Jan Pochyla
20bb7e9b5c sha1: fix context zeroing 2016-11-06 16:02:10 +01:00
Pavol Rusnak
8092be211c
trezor.messages: regenerate messages 2016-11-06 15:51:52 +01:00
Pavol Rusnak
c49c4ea29e
apps.common.coins: make coins definitions more readable + adapt generator 2016-11-06 15:50:39 +01:00
Pavol Rusnak
ca45689808
trezor.crypto: update trezor-crypto submodule 2016-11-06 15:20:46 +01:00
Jochen Hoenicke
949220ac0b
Protect signing against side-channel attack (#81)
Signing uses the bn_inverse function that is prone to side-channel
attacks.  We randomize its argument by multiplying it with a random
non-zero number.  At the end we multiply again by the same number to
cancel it out.

Changed get_k_random to take the prime range as a second argument and
to return a non-zero number.  This function was previously only used
for (non-rfc6979) signing and is now used for side-channel protection.
2016-11-06 15:20:07 +01:00
Pavol Rusnak
e68267e04b
undef ALIGN macro in curve25519 2016-11-06 15:16:09 +01:00
Jan Pochyla
44a3b7f9f1 signtx: fixes, refactoring 2016-11-06 14:23:40 +01:00
Jan Pochyla
adc3dde19e modtrezorcrypto: add HDNode.clone() 2016-11-06 14:23:40 +01:00