Commit Graph

27 Commits

Author SHA1 Message Date
Jochen Hoenicke 1cceec0ae2 Check that U2F key only uses hardened derivation (#139)
We generate only U2F keys with hardened derivation.  However, we
didn't check incoming keys if they used hardened derivation.
This patch fixes this.
2017-01-10 21:51:57 +01:00
Pavol Rusnak 1763a5b647
use new hdnode_private_ckd_cached API 2016-12-12 12:17:48 +01:00
Saleem Rashid 5f203d0a0c debug: Improve debugging API (#134)
* Allow DEBUG_LOG without DEBUG_LINK
* Move debugInt() to debug.c
2016-12-04 23:24:01 +01:00
Pavol Rusnak 810d478f4c
check return values of ecdsa_sign calls 2016-11-08 15:48:44 +01:00
Pavol Rusnak 4471c6e0e6
show different dialog when U2F client uses bogus appid 2016-10-31 11:56:11 +01: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
Jochen Hoenicke 6d65551b82
More alignment fixes 2016-08-30 12:39:37 +02:00
Jochen Hoenicke caafefc0fb Tweaked timeouts, handle null nodes. 2016-06-12 21:25:35 +02:00
Pavol Rusnak da067913c2
show app icons in u2f dialog 2016-06-09 18:11:19 +02:00
Jochen Hoenicke a366700332 fix indentation 2016-05-26 21:21:08 +02:00
Jochen Hoenicke 053fe7cb66 Remove Cancel Option
U2F doesn't allow cancellation on device.

Also fix button state in protect.  This fixes the following bug:
1. wipe device
2. press and hold right button, click left button to cancel.
3. release all buttons.
4. wipe device again, now automatic.
2016-05-24 01:59:37 +02:00
Jochen Hoenicke 68b34af19e More standard conform behaviour
Tested with u2f-ref-code/u2f-tests.
Known incompatibility:
 - changed challenge invalidates button press.
2016-05-24 01:16:55 +02:00
Jochen Hoenicke 96f30a0ba7 Don't ask for passphrase with u2f. 2016-05-20 01:49:20 +02:00
Jochen Hoenicke a0571e02a7 Removed more magic numbers.
`KEY_PATH_LEN`: length of the derivation path in the key handle

`KEY_PATH_ENTRIES`: number of entries in derivation path including
initial BIP-43 selector.

`KEY_HANDLE_LEN`: length of key handle (derivation path + HMAC checksum)
2016-05-18 03:05:04 +02:00
Pavol Rusnak 041eaa5e4b
refactor u2f dialogs into a separate function 2016-05-16 18:58:13 +02:00
Pavol Rusnak ad2bab0186
Merge branch 'u2f' of github.com:jhoenicke/trezor-mcu into u2f 2016-05-16 18:22:03 +02:00
Pavol Rusnak 9006c90a59
use MEMSET_BZERO and U2F_APPID_SIZE macros 2016-05-16 18:18:21 +02:00
Jochen Hoenicke 2ab950555e Fixed u2f reentry 2016-05-15 10:44:57 +02:00
Jochen Hoenicke eb2ef2464c CID hacks, not yet finished 2016-05-15 10:44:57 +02:00
Jochen Hoenicke 450a277f45 Only compile debugInt when debugging 2016-05-15 10:44:57 +02:00
Jochen Hoenicke 2abe5d477e Clean-up. Better checks for buffer overflow. 2016-04-29 16:20:54 +02:00
Jochen Hoenicke 5c13e78deb Added support for known appid. 2016-04-29 16:20:54 +02:00
Jochen Hoenicke b3bfc64d2f Use hmac for checking key integrity 2016-04-29 16:20:54 +02:00
Jochen Hoenicke 01ddb3ff66 Reduced buffer sizes, moved static info to flash 2016-04-29 16:20:54 +02:00
Jochen Hoenicke 1b8bd1852e Adapted U2F to new hdnode API 2016-04-29 16:20:54 +02:00
Mark Bryars 32f8819997 Generate hardened keys in a unique root 2015-11-05 01:24:37 +01:00
Mark Bryars 9328cad7f1 Add U2F support 2015-11-03 16:47:12 +01:00