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

1657 Commits

Author SHA1 Message Date
matejcik
5885978c83 Merge branch 'release/2020-04' 2020-04-15 15:00:23 +02:00
Andrew Kozlik
9e4a8ca785 core/webauthn: Improve error codes for uninitialized device. Return ERR_OPERATION_DENIED only upon user decline or timeout, otherwise it cancels the operation on all connected authenticators. 2020-04-14 12:24:17 +02:00
matejcik
2ccebd3175 core: raise SystemExit when exitting emulator (now that sys.exit is removed) 2020-04-14 10:17:37 +02:00
matejcik
4bddeefea0 core: unify mpconfigports for emulator and board
Changes in firmware/mpconfigport.h are minimal:

 * $VFS_FAT is dropped because it is irrelevant without $VFS
 * $REVERSE_SPECIAL_METHODS is added, to push down on code size
 * $THREAD is disabled unconditionally

unix/mpconfigport.h is reordered and modified to match
firmware/mpconfigport.h as much as possible, while selectively enabling
some needed features.

Notably, $USE_READLINE is enabled unconditionally
2020-04-14 10:17:37 +02:00
matejcik
d0f709b8cc core: fix and use MAKEMODULEDEFS instead of explicit registration 2020-04-14 10:17:37 +02:00
matejcik
a6976355c3 core: remove readline from built firmware 2020-04-14 10:17:37 +02:00
Dusan Klinec
25b6e9058f xmr: proto - add fields for protocol optimization 2020-04-13 22:19:56 +02:00
Andrew Kozlik
bc4e8eaa16 core/webauth: Update readme with Ed25519 algorithm and certificates. 2020-04-09 21:05:28 +02:00
Pavol Rusnak
197218338a
Merge pull request #936 from trezor/rework-serialize-deserialize
crypto: rework serialize/deserialize API
2020-04-09 09:53:23 +02:00
matejcik
eec0615444 core: drop sys.pyi from mocks (fixes #934)
A change introduced in mypy 0.770 disallows overriding some system
modules, including `sys`.

We only need the override for `sys.print_exception`, and the simplest
solution is to make mypy ignore that particular call.
2020-04-08 11:19:26 +02:00
Andrew Kozlik
c57bc62a05 core/tools: Add attestation certificate generator for FIDO2. 2020-04-06 18:29:05 +02:00
Andrew Kozlik
fca92d7344 core/webauthn: Update attestation certificate to comply with WebAuthn requirements. 2020-04-06 18:29:05 +02:00
Pavol Rusnak
a7806d08d7
core/crypto: remove unused bip32.deserialize function 2020-04-06 18:04:24 +02:00
Pavol Rusnak
1695228d80
core/crypto: remove unused serialize_private function 2020-04-06 15:49:36 +00:00
Pavol Rusnak
f07ff17fad
core/crypto: add missing field to Blake2b constructor 2020-04-06 12:28:36 +00:00
Andrew Kozlik
25a39ea729 core/webauthn: Fix handling of interleaving frames to comply with the U2F HID specification. 2020-04-06 09:53:42 +02:00
jagdeep sidhu
e58c5f63d5
common/defs: update SYS (#928) 2020-04-02 00:22:47 +02:00
Tomas Susanka
0b7a8449f8 core: style 2020-03-30 16:04:05 +00:00
Tomas Susanka
bf20537f41 core: add option to omit cancel button in HoldToConfirm; add it to reset 2020-03-30 16:00:12 +00:00
Pavol Rusnak
336a417233 core/bootloader: distinguish between a vendor change and downgrade with wipe 2020-03-25 15:15:12 +01:00
Andrew Kozlik
8ae0535e69 core/webauthn: Fix attestation statement format to use a list in the x5c field. 2020-03-24 16:18:37 +01:00
Tomas Susanka
aa71c20f2c core: require hold to confirm 2020-03-24 09:20:10 +00:00
Ondrej Mikle
634ed5aabc
core: commands for flashing via JLink (#911) 2020-03-23 10:40:06 +01:00
Tomas Susanka
025436db47 core/changelog: add FIDO2's Ed25519 2020-03-23 08:00:31 +00:00
Tomas Susanka
f786d75a6f core: drop obsolete check for ANYONECANSPEND segwit outputs 2020-03-20 14:19:31 +00:00
Tomas Susanka
d0d41c884e legacy: move script type checks to separate functions and unify with core 2020-03-20 14:19:31 +00:00
matejcik
bd9e15bb8c core/tests: add unit tests for prevhash writers 2020-03-20 14:19:31 +00:00
matejcik
a9faa4d4ab core/tests: fix inline variant of assertRaises
otherwise code like the following would fail:

>>> self.assertRaises(AssertionError, ensure, False)

because the AssertionError raised internally by `ensure` would be
conflated with the AssertionError raised by the tested function
2020-03-20 14:19:31 +00:00
matejcik
da89a17ce5 all: add checks for prev_hash size 2020-03-20 14:19:31 +00:00
matejcik
c15519f707 core/sign_tx: modify get_tx_header to avoid writing unchecked bytes 2020-03-20 14:19:31 +00:00
matejcik
9cab61fbd3 core/sign_tx: remove write_bytes_unchecked where appropriate 2020-03-20 14:19:31 +00:00
matejcik
27f6306e1d core: introduce safer write_bytes functions 2020-03-20 14:19:30 +00:00
matejcik
9a5f6b025a core/tezos: factor out writing Michelson instructions 2020-03-20 14:19:30 +00:00
matejcik
694f714719 core/ripple: rename write_bytes to avoid name collision 2020-03-20 14:19:30 +00:00
Tomas Susanka
64584e271c legacy, core: add and unify validation checks 2020-03-20 14:19:30 +00:00
matejcik
ffdb299c61 all: drop Capricoin support [NO BACKPORT] 2020-03-20 14:19:30 +00:00
matejcik
adea7d6b35 all: make timestamp mandatory on timestamp-enabled coins 2020-03-20 14:19:07 +00:00
matejcik
e2035b4972 all: drop Horizen and BIP-115 support [NO BACKPORT] 2020-03-20 14:19:07 +00:00
matejcik
6f9c6361ea core: remove negative_fee and cashaddr_prefix from bitcoin-only fw 2020-03-20 14:18:27 +00:00
matejcik
7d5771911c core: flip condition for force_bip143
this should be equivalent because Bitcoin does not have force_bip143 set
2020-03-20 14:18:27 +00:00
matejcik
ed464f3d47 all: ensure expiry, timestamp and extra_data are blocked as appropriate 2020-03-20 14:18:27 +00:00
matejcik
27803ee8c1 all: drop overwintered field from transaction 2020-03-20 14:18:27 +00:00
matejcik
c9fd3f77a5 all: add overwintered field to coin specification 2020-03-20 14:18:27 +00:00
Pavol Rusnak
817b922850 all: add extra_data and timestamp fields to coin specification 2020-03-20 14:18:27 +00:00
matejcik
136307bcae core: propagate coin info to all sanitize functions 2020-03-20 14:17:44 +00:00
matejcik
303c05aba7 core/sign_tx: check if prev_tx has enough outputs to match prev_index 2020-03-20 14:17:44 +00:00
Andrew Kozlik
a34637c0f2 core/sign_tx: Check multisig fingerprint before signing inputs. 2020-03-20 14:17:44 +00:00
Tomas Susanka
163220e4b7 core/wallet: properly check decred input 2020-03-20 14:17:44 +00:00
Ondřej Vejpustek
6274cfdf8b core: remove unreachable zcash code 2020-03-20 14:17:44 +00:00
Ondřej Vejpustek
d61181d7e8 core: fix transaction header for mixed segwit inputs 2020-03-20 14:17:44 +00:00
Tomas Susanka
f0a39df75d core/wallet: check inputs and outputs right after receiving them 2020-03-20 14:17:44 +00:00
Tomas Susanka
0903159d9b core, legacy: make sure OPRETURN ouput is not marked as change 2020-03-20 14:17:44 +00:00
Tomas Susanka
4af9aa547e core: forbid unnecessary fields in OPRETURN output 2020-03-20 14:17:44 +00:00
Andrew Kozlik
d800fcbf9f core/sign_tx: If there is a non-multisig input, then change output cannot be multisig.
(cherry picked from commit 8eb6ce0899)
2020-03-20 14:17:44 +00:00
Andrew Kozlik
b3cd760df0 core/webauthn: Disable CTAPHID_WINK function. 2020-03-20 15:07:06 +01:00
Andrew Kozlik
e5008eb332 core/webauthn: Remove indistinguishable credentials from the allow list. 2020-03-20 15:07:06 +01:00
Andrew Kozlik
cda9de8dd1 core/webauthn: Add maxCredentialCountInList and maxCredentialIdLength to authenticatorGetInfo response. 2020-03-20 15:07:06 +01:00
Andrew Kozlik
0af0e06d5b core/webauthn: Truncate names in credential data to at most 100 bytes. 2020-03-20 15:07:06 +01:00
matejcik
ccffefd667 core/boot: do not catch OSError in boot wait 2020-03-20 14:03:28 +01:00
matejcik
f6f041e269 core/sdcard: also catch OSError in the formatting phase 2020-03-20 14:03:28 +01:00
matejcik
3a71a5a05c core/sdcard: show "Wrong SD card" when unlocking SD protect with unformatted card 2020-03-20 14:03:28 +01:00
matejcik
3789a3372b core/sdcard: modify exception handling in fatfs
expose ff.c constants, raise them as arguments to FatFSError

introduce NotMounted and NoFilesystem as subclasses of FatFSError with
the appropriate error code set
2020-03-20 14:03:28 +01:00
Andrew Kozlik
8ee0026637 core: Allow PIN entry even when SD protect is enabled and the card is not present. 2020-03-19 15:04:33 +01:00
Andrew Kozlik
bfd834d1de storage: Add storage_ensure_not_wipe_code(). 2020-03-19 15:04:33 +01:00
Konnor Klashinsky
70a1f957ed
Fix BackupDevice layout on 18-word seed wallets 2020-03-13 13:41:04 +13:00
Andrew Kozlik
2f905a1157 core/webauthn: Add algorithm and curve to WebAuthnListResidentCredentials response. 2020-03-12 15:45:26 +01:00
Andrew Kozlik
f610787f8d core/webauthn: Clean up bytes/bytearray typing around uctypes. 2020-03-12 15:45:26 +01:00
Andrew Kozlik
e378820f7f core/webauthn: Implement support for Ed25519 signatures in FIDO2. 2020-03-12 15:45:26 +01:00
Pavol Rusnak
624b639ba8
Merge pull request #886 from trezor/onvej-sl/monero-optimizations-squashed
xmr/bp: memory optimizations and improvements, fixed style
2020-03-02 17:54:30 +01:00
Tomas Susanka
f8de140271 core: add cancel to hold to confirm dialogs 2020-03-02 13:58:41 +00:00
Dusan Klinec
2658e253fa xmr/bp: memory optimizations and improvements
- different approach to vector manipulation - more on the fly operations. Prepared for fully offloaded operations, BP on Trezor with constant memory.
- memory requirements reduced from (4MN + const) to (2MN + const)
- more raw methods to avoid unnecessary encoding/decoding
- chunking improved, chunk size set as a constant, changed from 64 to 32, missing pieces implemented to cover also BP 16
- proof_v8 support discontinued, old hardfork, not needed anymore
- get_exponent register clash fixed (for large vectors)
- reduced heap fragmentation by removing some temporary allocations
- hashing with len and offset to reduce heap fragmentation by creating a sliced arrays
- use to() wherever possible to avoid allocations and return of mutable private object
- global functions start with _ prefix, reduce import footprint
- use __slots__ in classes to minimize footprint
2020-03-02 12:17:03 +01:00
Tomas Susanka
21676a0662 ore/tezos: better wording in delegation cancel 2020-03-02 08:49:34 +00:00
matejcik
7f91bc571c core: ensure default task restarts after a passphrase workflow (fixes #883) 2020-02-28 15:55:40 +01:00
Tomas Susanka
5ee6e56f56
Merge pull request #880 from trezor/tsusanka/sign-verify-ui
Unify sign/verify message dialogs and fix text overflow
2020-02-28 15:47:48 +01:00
matejcik
bd9663af79 common/defs: update token reference, add new tokens to 2.3.0/1.9.0, regenerate coins_details 2020-02-27 19:13:17 +01:00
Tomas Susanka
86b010a18b
Merge pull request #878 from trezor/matejcik/fatfs-corruption
FatFS API rework
2020-02-27 15:58:38 +01:00
Tomas Susanka
c8b7d3fb56 core/changelog: SD card protection is part of 2.3.0 2020-02-27 13:57:48 +00:00
Tomas Susanka
a63e6fc4ef core+legacy: update changelogs 2020-02-27 13:21:17 +00:00
Tomas Susanka
a8af9feebe core: fix text overflow in some dialogs 2020-02-27 12:43:33 +00:00
Tomas Susanka
744c32991f core: unify sign/verify functions
The UI records are modified because of two changes:
- Added a coin name to the Sign/Verify screen (ETH/Lisk).
- Unified to use mono.
2020-02-27 12:43:33 +00:00
Tomas Susanka
b317613d63
Merge pull request #874 from trezor/tsusanka/test
Use wire errors where applicable
2020-02-27 13:38:30 +01:00
Tomas Susanka
495a59c282 core: use wire errors instead of ValueErrors where applicable 2020-02-27 10:46:01 +00:00
matejcik
18ac4fc9ca core: update Python facing APIs 2020-02-27 10:56:23 +01:00
matejcik
9ab84d2455 core/tests: thoroughly test modified APIs 2020-02-27 10:56:23 +01:00
matejcik
b24411b900 core/sdcard: unmount instance when powering off sdcard 2020-02-27 10:56:23 +01:00
matejcik
c81be584fb core/fatfs: ensure functions can only be called on a mounted filesystem
ff.c has a lazy-mounting feature, where any filesystem call will mount
the volume if it can. This messes with predictability of the mounted
state, so all (except mount/unmount/mkfs) Python functions will first
check if the fs is mounted.
2020-02-27 10:56:23 +01:00
matejcik
fa746e2990 core/fatfs: rework low-level FatFS API
Instead of having possibly multiple FatFS objects, each with its own
`fs` struct, there is one global static fs_instance. This is to match
the mode of operation of ff.c, which assumes a global list of mounts,
and all functions operate on the global based on path.

Methods of FatFS were converted to functions on the fatfs module.

fatfs.unmount() does not call ff.c's unmount, but simply invalidates
fs_instance. This is basically what ff.c would do, except without
messing with ff.c's global list of mounts.
2020-02-26 14:18:41 +01:00
Pavol Rusnak
c896f02eb3
core/boardloader: use SRAM as SD card read buffer
because DMA can't access the CCMRAM
2020-02-25 17:59:16 +01:00
Andrew Kozlik
2133f7cf29 core: Prevent data loss when writing to USB VCP. 2020-02-25 12:08:07 +01:00
matejcik
b916072389 common: restore PassphraseAck.state 2020-02-24 15:15:09 +01:00
matejcik
d7b9582386 core/sdcard: add ensure_filesystem option (fixes #868)
It is possible to call `ensure_sdcard` in a way that requires only SD
card be inserted, but not necessarily formatted.

This is useful for SD-protect and possibly other use-cases where the SD
card is read-only, and "not formatted" is identical to "not containing
the right files".
2020-02-24 13:28:44 +01:00
matejcik
e9c275c24f core/sdcard: fix invalid state when filesystem mounting fails 2020-02-24 13:28:44 +01:00
Pavol Rusnak
39ce100608
Merge pull request #864 from trezor/prusnak/bootloader-text-break
core/bootloader: split long vendor string
2020-02-21 18:39:20 +01:00
Tomas Susanka
6c47bf8230 core: store multiple sessions/caches at the same time 2020-02-21 14:40:42 +01:00
Pavol Rusnak
562671401e
Merge pull request #860 from trezor/prusnak/multisig-show-yours-others
core: show yours/others in get_address for multisig
2020-02-20 13:49:13 +01:00
matejcik
918603ad5c core: add unit test for sdcard wrapper 2020-02-20 12:51:48 +01:00
matejcik
7983fd34d6 core: fix unit tests 2020-02-20 12:51:48 +01:00
matejcik
4ed6487a19 core/sdcard: add out-of-bounds checks to emulator 2020-02-20 12:51:48 +01:00
matejcik
ddee77ecb6 core: add SD clearing via debuglink 2020-02-20 12:51:48 +01:00
matejcik
d0b1b171f1 core/sdcard: ensure emulator initializes the SD card when first needed 2020-02-20 12:51:48 +01:00
matejcik
5bd8d9b5bb core/sdcard: make allocating new SD card for emulator fast 2020-02-20 12:51:48 +01:00
matejcik
1e9352b9e0 core: add SD format dialog, generalize sdcard usage 2020-02-20 12:51:48 +01:00
matejcik
5bac85f260 core: use filesystem wrapper instead of the ensure_filesystem decorator 2020-02-20 12:51:48 +01:00
matejcik
d08942be4a core: introduce filesystem wrapper 2020-02-20 12:51:48 +01:00
matejcik
b2084a19be core/trezorio: move sdcard functions to a submodule 2020-02-20 12:51:48 +01:00
matejcik
30529d218d core/sdcard: change SDCard methods to plain functions 2020-02-20 12:51:48 +01:00
matejcik
06b89c57c5 core/sdcard: return proper disk status flags to fatfs 2020-02-20 12:51:48 +01:00
Tomas Susanka
ff1bb67abc common: return the PasshraseType button request 2020-02-20 08:04:35 +00:00
Pavol Rusnak
dc66bbe3d5
core/bootloader: split long vendor string 2020-02-19 21:40:28 +00:00
Pavol Rusnak
74802a107e
core/modtrezorui: add display_text_split 2020-02-19 21:40:28 +00:00
Pavol Rusnak
c4babd3c0b
Merge pull request #846 from trezor/bootloader-read-retry
core/bootloader: make read more benevolent and read error more helpful
2020-02-19 19:45:34 +01:00
Pavol Rusnak
581e46ff87
Merge pull request #845 from trezor/prusnak/webusb-popup
Don't show WebUSB popup in firmware, in bootloader only if no firmware present
2020-02-19 18:18:01 +01:00
Pavol Rusnak
7944c1a837
core/monero: add confirmation dialog for unlock_time 2020-02-19 14:31:45 +00:00
Pavol Rusnak
a808cc9190
core/apps: await require_confirm should be called without return 2020-02-19 14:31:45 +00:00
Pavol Rusnak
b9486c0b33
core: show yours/others in get_address for multisig 2020-02-18 22:39:55 +00:00
Tomas Susanka
577daf09fe tests: introduce --ui-check-missing to test/remove missing tests 2020-02-18 09:33:21 +01:00
matejcik
1d41141a1f core/emulator: properly ignore inotify problems (fixes #854) 2020-02-17 12:33:38 +01:00
Pavol Rusnak
2958a97c87
Merge pull request #830 from trezor/tsusanka/fw-upgrade
FW Update: Request a small chunk first to make the UI smoother
2020-02-15 13:08:33 +01:00
matejcik
e61b7d28e9 all: do not send state in PassphraseAck (not needed for compatibility) 2020-02-13 15:44:50 +01:00
Pavol Rusnak
63dfd6c6ab
core/bootloader: make read more benevolent and read error more helpful 2020-02-12 22:05:29 +01:00
Pavol Rusnak
07cd73ce57
core: show webusb popup only in bootloader and only if firmware is not installed 2020-02-12 20:47:05 +00:00
matejcik
4c8c96272c emu: fix flag options with defaults
Click REALLY INSISTS you provide on/off switches for your options.
You can use is_flag, but then the presence of the option changes based
on the default value.

Which makes sense, really:
@option("-f", "foobar", is_flag=True, default=False)
you would expect `./cli -f` to have `foobar is True`

whereas with
@option("-f", "foobar", is_flag=True, default=True)
you would expect `./cli -f` to have `foobar is False`, otherwise it's a
no-op

this becomes fun with `default=os.environ.get("SOMETHING")`, because
then the effect of the option CHANGES with a value of environment
variable!

there's two ways around this:
a) don't use defaults, update the flag explicitly, like:
   foobar = foobar or os.environ.get("FOOBAR") == "1"
b) forget about is_flag and specify an on/off switch, where the default
   value works as intended

since the latter is also technically speaking more correct, i'm doing it
2020-02-12 13:32:05 +01:00
matejcik
271da3fa39 python: add detailed logging to emulator runner 2020-02-12 13:31:58 +01:00
matejcik
c14429c445 all: shut down emulator on error_shutdown 2020-02-12 13:31:31 +01:00
matejcik
d3b88a37be core: do not catch SystemExit in handle_session (#826) 2020-02-12 10:36:42 +01:00
Tomas Susanka
f947fe97cc core: fix style 2020-02-11 16:41:43 +01:00
Tomas Susanka
0a13f7a441 core: properly limit passphrase to 50 bytes 2020-02-11 15:39:08 +00:00
Tomas Susanka
2c0504ad1c
Merge pull request #803 from trezor/passphrase
Passphrase Redesign
2020-02-11 16:01:59 +01:00
matejcik
05a1d6f771 core/debug: add "show arbitrary screen" capability, for easier prototyping 2020-02-11 11:53:34 +01:00
matejcik
c01d04f26e common/protob: drop a default field declaration
which triggers nanopb bug https://github.com/nanopb/nanopb/issues/487
2020-02-11 11:53:34 +01:00
matejcik
741c0c8888 core: improve stability of Monero test runner 2020-02-11 11:16:28 +01:00
matejcik
4c9689d7a7 common: return deprecated fields to protobuf, to allow cross-version compatible code 2020-02-10 12:35:28 +01:00
Pavol Rusnak
e58225fe02
core/boot: don't call mkfs in emulator 2020-02-07 15:30:21 +00:00
Pavol Rusnak
fdfa64ac2a
core/ui: fix HoldToConfirm redraw 2020-02-07 15:21:16 +00:00
Pavol Rusnak
32f8f1cb61
core/embed: update fatfs to 0.14; use upstream version 2020-02-07 15:21:16 +00:00
Tomas Susanka
56dc952495 common: fix PassphraseAck.on_device id 2020-02-07 14:19:01 +00:00
Pavol Rusnak
73ed2f3450
legacy: small nitpicks related to the new passphrase handling 2020-02-07 11:41:03 +00:00
Tomas Susanka
15ed5cd19e
core: do not clear cache on ClearSession 2020-02-07 11:41:03 +00:00
Tomas Susanka
fd0dc8ed66
core/passphrase: merge 'get from user' functions 2020-02-07 11:41:03 +00:00
Tomas Susanka
7d7ffe3b67
cardano: derive the root and then cache 2020-02-07 11:41:02 +00:00
matejcik
3fa99c0c6a
core/tests: add storage.cache tests 2020-02-07 11:41:02 +00:00
matejcik
938f347514
core: use DUMMY_CONTEXT constant instead of own instance 2020-02-07 11:41:02 +00:00
matejcik
d4171aaedc
core/tests: extract common await_result() method 2020-02-07 11:41:02 +00:00
matejcik
1f50a13edf
core: use cache for Monero live refresh confirmation 2020-02-07 11:41:02 +00:00
Tomas Susanka
b96d7cafbb
core: rework cache and fix cardano caching 2020-02-07 11:41:01 +00:00
Tomas Susanka
aa6988a556
core/ui: introduce draw_simple 2020-02-07 11:41:01 +00:00
Tomas Susanka
d5763d9cab
all: implement code review comments 2020-02-07 11:41:01 +00:00
Tomas Susanka
f3553f63f1
common: remove PassphraseRequest.on_device completely 2020-02-07 11:41:00 +00:00
Tomas Susanka
c65b57affb
core, legacy: remove passphrase_cached 2020-02-07 11:41:00 +00:00
Tomas Susanka
1343583d21
core: bump version to 2.3.0 2020-02-07 11:41:00 +00:00
Tomas Susanka
8fa0d8f098
core/passphrase: show dialog to enter the passphrase on host 2020-02-07 11:41:00 +00:00
Tomas Susanka
a3f3d4fcdb
remove ping.passphrase/pin 2020-02-07 11:41:00 +00:00
Tomas Susanka
b5d6aaf77c
tests: test PassphraseAck options 2020-02-07 11:41:00 +00:00
Tomas Susanka
ece351c5e5
core: do not prompt for passphrase if 'always' setting is enabled 2020-02-07 11:40:59 +00:00
Tomas Susanka
466dc4732d
core/passphrase: add button requests 2020-02-07 11:40:59 +00:00
Tomas Susanka
4a0f727f13
core: fix monero 2020-02-07 11:40:59 +00:00
Tomas Susanka
cd09f9ce94
all: modify passphrase source to always on device 2020-02-07 11:40:59 +00:00
Tomas Susanka
eafd57c301
common, core: add passphrase entry capability 2020-02-07 11:40:58 +00:00
Tomas Susanka
90d5cdfd5b
all: rework passphrase
The `on_device` field is being moved to PassphraseAck, State messages
are removed. Features newly contain `session_id`.
2020-02-07 11:40:58 +00:00
Tomas Susanka
a02d7e3daf core/bootloader: request vendor header first 2020-02-06 12:22:32 +00:00
matejcik
d28e33ef02 core/headertool: support generating vendor headers with explicit size 2020-02-05 12:23:34 +01:00
Pavol Rusnak
6dbed1424f
core+legacy: update nanopb api to version 0.4 2020-02-04 17:18:27 +00:00
Pavol Rusnak
3eb7775659
core/bootloader: regenerate protobuf messages 2020-02-04 17:18:17 +00:00
Pavol Rusnak
4647e7d686
core+legacy: use nanopb generator from pipenv 2020-02-04 17:15:25 +00:00
Pavol Rusnak
5bf8eca350
legacy+core: accept only valid UTF-8 strings via nanopb 2020-02-04 17:15:25 +00:00
Tomas Susanka
277e494ffa core/recovery: end dry run before showing success
updates #815
2020-02-03 12:12:49 +00:00
Tomas Susanka
4850eaf534 emu.py: remove frozen variable 2020-01-30 14:47:11 +00:00
EtherCore Contributor
c03caaf76a
common/defs: switch ERE logo (#808) 2020-01-29 10:49:21 +01:00
matejcik
5d052678a6 build: make sure resources are built for 'make mypy' 2020-01-28 16:42:24 +01:00
matejcik
0df3c64855 core: fix unexpected messages in debug mode (fixes #809) 2020-01-27 19:41:41 +01:00
Tomas Susanka
bf1514d1ac core/test/strings: add test for words ending with 'hsxz' 2020-01-27 09:11:11 +00:00
matejcik
4e82e69070 core: add missing type annotation 2020-01-24 16:55:24 +01:00
Tomas Susanka
0053511c66 utils: introduce format_plural and move format functions to strings.py 2020-01-24 16:25:14 +01:00
matejcik
75264a07a8
Emulator launcher scripts (#796)
Emulator launcher scripts
2020-01-24 16:18:18 +01:00
Pavol Rusnak
4868afcf51
core: add upy 1.12 to changelog 2020-01-24 14:34:06 +01:00
Pavol Rusnak
3de1b3aa54
core/embed: switch to unprivileged in main.c 2020-01-24 12:29:46 +00:00
Pavol Rusnak
7a2e0c3412
core/embed: don't call functions via supervisor if in privileged mode 2020-01-23 18:18:59 +00:00
matejcik
0496e49507 core/tests: fix monero runner script 2020-01-23 18:43:20 +01:00
matejcik
a3d309eca2 core/prof: make sure coverage data is generated with absolute paths 2020-01-23 18:43:20 +01:00
matejcik
e2fd2c35ff core: modify profiling wrapper to work with frozen builds 2020-01-23 18:43:20 +01:00
matejcik
6cf48bf485 ci: use explicit trezor.log location 2020-01-23 18:43:20 +01:00
matejcik
85f2e18828 core: convert emu.sh to a simple dependency-less compat wrapper 2020-01-23 18:43:20 +01:00
matejcik
22c8b2569b core: simplify monero test use of emulator 2020-01-23 18:43:20 +01:00
matejcik
ec192e9406 core: use better emulator test wrappers (fixes #468) 2020-01-23 18:43:20 +01:00
matejcik
2294fb0453 core: drop unused env variables (TREZOR_TEST, TREZOR_SAVE_SCREEN) 2020-01-23 18:43:20 +01:00
matejcik
8dce2cf98c core: introduce emulator runner (fixes #466) 2020-01-23 18:43:20 +01:00
matejcik
27c4c2dd50 core: do not let frozen emulator import live files 2020-01-23 15:50:28 +01:00
matejcik
29e883ab59 core/monero: fix usage of ctx.wait in pagination 2020-01-23 15:46:09 +01:00
matejcik
a79279115e core: move confirm_signal evaluation into concrete Layout implementations
Apart from making the code more correct for its users in
apps.common.confirm and elsewhere, this fixes a problem where the
confirm_signal would be scheduled before the dialog is rendered.
By making sure that handle_rendering is scheduled (i.e., listed in
create_tasks) before confirm_signal, we can be sure to render at least
once and thus appear in the UI test results.
2020-01-23 15:45:10 +01:00
Pavol Rusnak
4b1159b94d
tools/keyctl-proxy: blue is not readable on my display :) 2020-01-22 16:06:38 +00:00
matejcik
8a5242ed0f
core/tools: make keyctl remote signing more resilient 2020-01-20 17:33:50 +01:00
matejcik
611b734d21
add Pyro4 to pipenv, and make headertool work without it 2020-01-20 17:33:50 +01:00
matejcik
3f85db1b62
core/tools: retain client handle, only ask for passphrase once 2020-01-20 17:33:00 +01:00
matejcik
ccacada37c
core/tools: cleanly shut down keyctl-proxy after signing 2020-01-20 17:32:59 +01:00
matejcik
e9c68d7397
core/tools: pass fw instance properly in keyctl-proxy 2020-01-20 17:32:59 +01:00
matejcik
388843f772
core/tools: make keyctl-proxy output nicer 2020-01-20 17:32:59 +01:00
matejcik
7c56a1296f
core/tools: add help texts to headertool 2020-01-20 17:32:59 +01:00
matejcik
1b04d1caa7
core/tools: drop tools obsoleted by headertool 2020-01-20 17:32:59 +01:00
matejcik
9341f0d584
core: improve building of vendor headers 2020-01-20 17:32:59 +01:00
matejcik
c03ac3f8dd
core/tools: update keyctl-proxy to work with headertool 2020-01-20 17:32:59 +01:00
matejcik
5b48505b88
core/tools: fold keyctl-coordinator into headertool 2020-01-20 17:32:59 +01:00
matejcik
cc29b22f91
core/tools: introduce headertool 2020-01-20 17:32:58 +01:00
matejcik
fe4ef336aa
core/keyctl: get rid of serpent conversions 2020-01-20 17:32:58 +01:00
matejcik
15bd35824b
python/cosi: improve API
cosi.verify was renamed to verify_combined, because it is pretty much
ed25519.verify, and the new name implies what it does in terms of the
CoSi scheme: verify a signature with already-combined public keys.

cosi.verify_m_of_n signature was simplified by not requiring the `n`
parameter, which is not important for verification. The updated function
was renamed to cosi.verify, because this is the standard CoSi
verification operation: given signature, digest, required number of
signatures, sigmask, and a list of public keys, verify that enough
signatures are indicated and that they sign the digest.
2020-01-20 17:32:58 +01:00
Pavol Rusnak
500156b9ba
core/embed: don't use local copy of inflate 2020-01-18 17:09:52 +01:00
Pavol Rusnak
8a36ead915
common/defs: add Faceboook to recognized apps 2020-01-16 15:35:45 +00:00
Dušan Klinec
af6a607b39 common/xmr: message changes optimizing runtime and memory (#786) 2020-01-12 22:24:18 +01:00
Andrew Kozlik
289d8276eb core/fido2: check for HID timeout in send_cmd() (#791) 2020-01-11 14:33:24 +01:00
Tomas Susanka
7c41b40dff
tests: introduce UI tests for core with diffs (#784)
tests: introduce UI tests for core with diffs
2020-01-10 20:39:31 +01:00
Tomas Susanka
30858c4969 tests/ui: omit the red square from screenshots
except the first one on homescreen because it gets rendered only once
2020-01-10 08:25:12 +00:00
matejcik
d4eed4b8ff core/tests: update tests for modified slip39 API 2020-01-09 16:00:33 +01:00
matejcik
f90ba10af3 core: modify function signatures to match python-shamir-mnemonic 2020-01-09 16:00:33 +01:00
Milan Rossa
33b7e378c2
core/ci: add coverage target, introduce posttest stage 2020-01-09 15:26:40 +01:00
Milan Rossa
62e9ff0ad2
core: introduce coverage wrapper 2020-01-09 15:26:40 +01:00
Milan Rossa
8b31c6fcf4
core: increase stack size for unix port 2020-01-09 15:26:40 +01:00
Pavol Rusnak
9bc3af08b2
core: update mpconfigport.h from upstream (for both stm32 and unix) 2020-01-09 15:20:22 +01:00
Milan Rossa
42f1af3aa4
core: add build target for debug unix build 2020-01-09 13:44:46 +01:00
Jan Pochyla
655ec0a70c core/unix: update main.c from upy 1.12 2020-01-07 20:52:43 +01:00
Jan Pochyla
87e7d43068 core/firmware: gchelper.s moved to different directory 2020-01-07 20:52:43 +01:00
Jan Pochyla
7deade5a10 core/firmware: PendSV_Handler is defined in pendsv.c 2020-01-07 20:52:43 +01:00
Jan Pochyla
ecc4313a34 core/usb: avoid naks in hid/webusb rx interfaces 2020-01-07 20:52:43 +01:00
Jan Pochyla
6afff3cc0e core/loop: remove unused code 2020-01-07 20:52:43 +01:00
Jan Pochyla
f526818603 core: remove qstr blacklist
As its no longer needed. Mirrors micropython change a09fd0475.
2020-01-07 20:52:43 +01:00
Jan Pochyla
5aca68e50c core: generate moduledefs.h for micropython 2020-01-07 20:52:42 +01:00
Tomas Susanka
8796ca96b9 tests/ui: rename test-screen to ui 2020-01-07 09:13:08 +00:00
Tomas Susanka
47419c7768 core/ui: simplify swipe if animation is disabled 2020-01-06 14:57:01 +00:00
Tomas Susanka
56257eb6a5 tests/ui: code review fixes 2020-01-06 14:44:30 +00:00
Tomas Susanka
3a035a0ef8 tests: save screens directly to ui_tests; introduce recorded/actual dir 2020-01-03 14:28:27 +00:00
Tomas Susanka
eabd0da196 core/make; legacy: style 2020-01-03 14:28:27 +00:00
Tomas Susanka
51ef963738 tests: introduce UI tests for core 2020-01-03 14:28:27 +00:00
Tomas Susanka
a28f29708f ci: add junit for a nice tests overview 2020-01-03 12:44:12 +00:00
Tomas Susanka
ffea791658
Merge pull request #774 from trezor/tsusanka/shamir-word-checks
Recovery: refactor word checks and add a test
2019-12-30 13:26:07 +01:00
Tomas Susanka
d8e956fc6d core/recovery: change exceptions types; modifications in tests 2019-12-30 11:35:56 +00:00
Tomas Susanka
7f730cb6f9 core/recovery: refactor to exceptions 2019-12-27 19:02:30 +00:00
Tomas Susanka
f4e11a9176 core/recovery: rework arguments 2019-12-27 18:46:22 +00:00
Tomas Susanka
20bcc68926 core/tests: remove utest.py 2019-12-27 13:28:15 +01:00
Tomas Susanka
faa9078c2b core/recovery: refactor word checks and add a test 2019-12-23 13:40:45 +01:00
Tomas Susanka
a316347bf1 core/tests: test debug is on 2019-12-23 12:01:00 +00:00
Tomas Susanka
5677c254b1 core/tests: remove PYOPT settings 2019-12-23 11:51:29 +00:00
Tomas Susanka
6594ee9368 core/recovery: correctly inform about share already entered inside first group 2019-12-19 17:07:44 +00:00
Pavol Rusnak
8572a5a942
core: fix interrupt usage in usbd_conf 2019-12-18 16:30:57 +00:00
Ondrej Mikle
0064fda203
core: check whether USB structures are correct to avoid faults in shutdown 2019-12-18 17:16:36 +01:00
Pavol Rusnak
6198509948
core: bump version to 2.2.1; update changelog 2019-12-16 19:06:33 +01:00
Pavol Rusnak
d6a3725955
common: remove coins with no trezor compatible wallets 2019-12-15 18:19:36 +00:00
Milan Rossa
6d932a8a1d core/embed/unix/flash: Don't reopen flash emulation file. 2019-12-15 10:21:29 +01:00
Pavol Rusnak
a9454b216d
core: move delay.c from trezorhal to firmware, fix prodtest build 2019-12-15 08:59:47 +00:00
Pavol Rusnak
a9e5149b95
core: reorganize source code to allow boardloader build
(after DMA changes)
2019-12-15 08:43:00 +00:00
Tomas Susanka
e75e77a5b2 core/changelog: add info about broken fw upgrades on 2.1.3 2019-12-13 14:36:15 +00:00
Pavol Rusnak
e5bdf0d51b
Merge pull request #742 from trezor/language
common: change language field to IETF BCP 47 language tag
2019-12-12 18:07:54 +01:00
Pavol Rusnak
046ff607d3
Merge branch 'sdcard-dma' 2019-12-12 18:00:01 +01:00
Milan Rossa
91007bafe9 core/unix/main: Print memory info (peak memory) when TREZOR_LOG_MEMORY env var is set. Part of #194 2019-12-12 17:58:35 +01:00
Pavol Rusnak
43da0d754a
core/embed: decrease SD card operations timeout to 5s 2019-12-11 17:24:28 +00:00
Pavol Rusnak
b34675401c
core/embed: add explicit fault handlers 2019-12-11 16:40:58 +00:00
Pavol Rusnak
c8c27dcd2f
core/embed: enable/disable SDIO/DMA interrupts via supervisor calls 2019-12-11 15:28:49 +00:00
Pavol Rusnak
990a91cd13
core/embed: enable DMA for SDIO operations 2019-12-11 15:28:49 +00:00
Andrew Kozlik
0432f5e801 webauthn: Add use_self_attestation flag to FIDO apps. 2019-12-11 15:29:52 +01:00
Andrew Kozlik
2e9db44434 core/webauthn: Add AAGUID to README.md. 2019-12-10 15:56:41 +01:00
Pavol Rusnak
7646b97dca
common: divisibility -> decimals 2019-12-09 17:43:47 +01:00
matejcik
8cced84bc4 core: fix build-icons 2019-12-09 16:31:46 +01:00
matejcik
3a132e594e core/stellar: make sure function that awaits is async 2019-12-09 16:31:46 +01:00
matejcik
ac6e23fb87 mako: improve local variable name 2019-12-09 16:31:46 +01:00
matejcik
558020be01 common: drop lastpass from FIDO apps
as it doesn't actually support FIDO/U2F
2019-12-09 16:31:46 +01:00
matejcik
61e4f79c90 core: use common implementation for toif_convert 2019-12-09 16:31:46 +01:00
matejcik
67b2ba558b core: auto-generate list of FIDO known apps
and improve code for loading icons
2019-12-09 16:31:46 +01:00
matejcik
a46fd6f508 core: auto-generate FIDO icons 2019-12-09 16:31:46 +01:00
Pavol Rusnak
bb8d809a6d
common: change language field to IETF BCP 47 language tag 2019-12-08 11:27:10 +01:00
Tomas Susanka
0f3466bf01 core, legacy: update changelog 2019-12-06 12:53:25 +00:00
Tomas Susanka
1b88840f53 docs: move docs to root 2019-12-06 12:24:20 +00:00
Tomas Susanka
61430d800e core/stellar: add screen for timebounds 2019-12-05 14:31:28 +00:00
Pavol Rusnak
3d50bb5ed8
common: add Peercoin, regenerate coins 2019-12-05 09:43:32 +00:00
Pavol Rusnak
5301c03607
common: add coin.divisibility attribute
legacy: remove has_address_type/has_address_type_p2sh
2019-12-05 04:30:51 +01:00
Andrew Kozlik
6ca0288092
Merge pull request #720 from trezor/andrewkozlik/wipe-code
Implement wipe code feature.
2019-12-04 15:24:49 +01:00
Andrew Kozlik
420a4b8ba7 core/webauthn: Close U2F confirmation screen if browser stops polling for more than 3 seconds. 2019-12-03 14:48:59 +01:00
Andrew Kozlik
0b851d6959 core/webauthn: Reply with ERR_CHANNEL_BUSY once a U2F request has been declined to stop Chrome from polling. 2019-12-03 14:48:59 +01:00
Andrew Kozlik
4d3c634732 core/webauthn: Use different return code when user verification is requested but PIN is not set to get better browser behavior. Related to cf6949332f. 2019-12-03 14:48:59 +01:00
Andrew Kozlik
a63ff8f9b4 core/webauthn: Add bogus app ID used by Firefox to indicate error in U2F. Figure out which error to display based on past U2F_AUTHENTICATE check-only requests on the same channel. 2019-12-03 14:48:59 +01:00
Andrew Kozlik
a704bfe184 core/webauthn: Allow only one CTAPHID_WINK command at a time on any given channel ID to fix continuous display blinking with Android. 2019-12-03 14:18:43 +01:00
Andrew Kozlik
3a4e9bd25c core/ui: Ignore any new alert requests if an alert is already in progress in order to avoid multiple alerts overlapping. 2019-12-03 14:18:43 +01:00
Andrew Kozlik
7c39e2f142 core/webauthn: Specify the exception raised by res.load(). 2019-11-26 15:44:05 +01:00
Andrew Kozlik
790178a442 fixup! core/webauthn: Allow new workflow to be set after a command response is sent, so that in device tests the next test doesn't fail with ERR_CHANNEL_BUSY while the previous workflow is closing. 2019-11-26 15:18:14 +01:00
Andrew Kozlik
c463069895 core/webauthn: Don't log an exception when a relying party is not listed in knownapps. 2019-11-26 15:18:14 +01:00
Andrew Kozlik
5bdd523b91 vendor: Update fido2-tests submodule to fix issues with random ordering. 2019-11-26 15:18:14 +01:00
Andrew Kozlik
203853faed core/webauthn: Allow new workflow to be set after a command response is sent, so that in device tests the next test doesn't fail with ERR_CHANNEL_BUSY while the previous workflow is closing. 2019-11-26 15:18:14 +01:00
Andrew Kozlik
1bc8226a50 common, core: Add wipe_code_protection to the Features message. 2019-11-25 12:32:20 +01:00
Andrew Kozlik
a3b608d8dd storage, core: Reveal the wipe code status after the device is unlocked. 2019-11-25 12:32:20 +01:00
Andrew Kozlik
a168d661cf core: Add support for ChangeWipeCode message. 2019-11-25 12:32:20 +01:00
Andrew Kozlik
4381511930 common: Add ChangeWipeCode message. 2019-11-25 12:32:20 +01:00
Tomas Susanka
11f8da2f2d core: remove .sconsign.dblite on make clean 2019-11-21 14:01:15 +00:00
Andrew Kozlik
2ae1d9a935 webauthn: Disable signature counter in FIDO2 for dropbox.com, gandi.net, secure.login.gov. 2019-11-21 13:59:45 +01:00
matejcik
1f6cc77dec upgrade black to 19.10b0 2019-11-20 16:02:47 +01:00
matejcik
e25a7ebb7f core: add changelog for RecoveryDevice fix 2019-11-20 12:27:57 +01:00
matejcik
34913a328a all: disallow most RecoveryDevice fields in dry-run (fixes #666) 2019-11-20 12:27:57 +01:00
Pavol Rusnak
d029920540
core/webauthn: update metadata 2019-11-16 10:53:10 +00:00
Pavol Rusnak
33ecdeb193
core+legacy: remove confusing changelog entries 2019-11-13 19:47:35 +01:00
Pavol Rusnak
e1e081fb7a
core/webauthn: fix metadata 2019-11-13 17:16:23 +01:00
matejcik
09962708d3 core: move load_device to the debug app 2019-11-13 16:48:35 +01:00
matejcik
fd8aed6105 all: drop XPRV feature of LoadDevice 2019-11-13 16:48:35 +01:00
Pavol Rusnak
16af7f1353 common: add {needs,no}_backup flags to LoadDevice, make it debug only 2019-11-13 16:48:35 +01:00
Pavol Rusnak
0a0cd797e3
ci/tests: use new Monero tests binary 2019-11-13 16:29:06 +01:00
Pavol Rusnak
cde944b565
Merge branch 'reorder-usb' 2019-11-13 16:23:07 +01:00
Pavol Rusnak
908c0fb8c0
core/docs: add info about enabling VCP for non-Bitcoin-only FW 2019-11-13 16:22:42 +01:00
Tomas Susanka
20a30ae521 tests/monero: print hash of the monero binary 2019-11-13 14:44:40 +00:00
Tomas Susanka
85d7215bf3
Merge pull request #700 from trezor/tsusanka/upgrade-u2f-check
Get next u2f counter and add tests for it
2019-11-13 15:19:22 +01:00
Pavol Rusnak
2652936c16
core/tests: adapt device_emu_fido2/u2f to reordered usb endpoints 2019-11-13 13:21:39 +01:00
Pavol Rusnak
df273bf836
core/usb: reorder endpoints 2019-11-13 13:21:39 +01:00
Pavol Rusnak
3b5a113304
core/usb: small reformat 2019-11-13 11:33:58 +00:00
Tomas Susanka
a8b82975a1 core/management: get next u2f counter 2019-11-13 10:55:52 +00:00
Tomas Susanka
2a20287882 common/protobuf: add message for retrieving an increased u2f counter 2019-11-13 10:55:52 +00:00
Dusan Klinec
d81f43f7a4 tests: use new monero testing binary v0.15.0.0 2019-11-12 22:53:47 +01:00
Pavol Rusnak
d761a57689
storage: introduce FLAGS_APPID 2019-11-11 19:47:48 +01:00
Pavol Rusnak
1caae698ca
storage: make FLAG_PUBLIC and FLAGS_WRITE part of public API 2019-11-11 19:47:48 +01:00
matejcik
c96d5ab1bc core/sd_salt: check if sd_salt is enabled before asking for SD card 2019-11-11 16:16:42 +01:00
matejcik
0c4fa03575 core/sd_salt: properly await ensure_sd_card 2019-11-11 16:14:43 +01:00
matejcik
c9fca25531 core: add storage module to frozen build 2019-11-11 15:52:46 +01:00
matejcik
75622d92d2 Merge branch 'master' into matejcik/storage-relocation 2019-11-11 14:39:00 +01:00
matejcik
dee47a06f2 core/sd_salt: ensure ProcessErrors are propagated properly 2019-11-11 14:37:20 +01:00
Tomas Susanka
597277725e core/recovery: end progress before showing success
This fixes #695. This was the default behaviour but we have changed it
because of Wallet, which was doing the polling. Since Wallet can now
send RecoveryDevice again and acquire Context this is no more needed.
2019-11-11 10:39:07 +00:00
Tomas Susanka
f4385ede2a core/changelog: add note on Recovery rework 2019-11-10 13:07:23 +01:00
Pavol Rusnak
4462fb522c
core/nem: don't use mp_obj_new_str_of_type 2019-11-09 12:06:12 +00:00
matejcik
8225e5d8b2 core/sd_salt: remove forgotten fs.mount 2019-11-08 14:23:58 +01:00
matejcik
18ab677124 core/webauthn: rename storage.webauthn to storage.resident_credentials 2019-11-08 12:47:54 +01:00
matejcik
f03562cca0 core/sd_salt: decorate sd_salt functions to ensure proper finalization and power-off 2019-11-08 12:42:30 +01:00
matejcik
33bd4d3ba9 Merge branch 'master' into matejcik/storage-relocation 2019-11-07 12:51:02 +01:00
matejcik
51a5d8e30a core/boot: do not pass useless argument to request_sd_salt 2019-11-07 11:31:29 +01:00
matejcik
7de5cec4b0 core: halt if the script ever runs out of the loop in main.py 2019-11-07 11:27:45 +01:00
matejcik
5ffa395dec core: catch more exceptions for the purpose of halting 2019-11-07 11:27:45 +01:00
matejcik
7cb125d1cb core/recovery: properly replace homescreens 2019-11-07 11:27:45 +01:00
matejcik
1c59ba9423 core/workflow: improve comments and logic 2019-11-07 11:27:45 +01:00
matejcik
a3930d4bdb core: rename close_default to a more appropriate kill_default 2019-11-07 11:27:45 +01:00
Tomas Susanka
ca484b2c06 core: remove persistence boot and set recovery as a default workflow 2019-11-07 11:27:45 +01:00
matejcik
e9fe6c2943 core/boot: remove leftover print 2019-11-06 13:57:00 +01:00
matejcik
28d30ffd2f core/webauthn: unify signatures of Credential.from_bytes and friends 2019-11-06 13:56:52 +01:00
Tomas Susanka
7dba12cb6d core/log: print received message's name 2019-11-06 11:20:46 +01:00
Pavol Rusnak
8928e891c6
core/Changelog: add entry 2019-11-05 15:57:43 +01:00
Pavol Rusnak
0040b916d2
common/defs: remove inactive coins 2019-11-03 10:44:22 +00:00
Pavol Rusnak
2d8f70d49a
common/defs: add mojeid.cz definition to webauthn 2019-11-01 12:54:28 +00:00
Tomas Susanka
c261427d73
Merge pull request #667 from malinah/malinah/confirmbtn
core/trezor/ui/loader: fixes #655 Button hold-to-confirm press detection.
2019-11-01 11:39:31 +01:00
apollo
18c926a34b common/defs: fix zcore signing (#669) 2019-11-01 00:18:03 +01:00
Milan Rossa
2143978b12 core/trezor/ui/loader: fixes #655 Button hold-to-confirm press detection. 2019-10-31 23:04:46 +01:00
matejcik
1397bbfeb5 core/tests: fix test suite after storage move 2019-10-31 16:34:16 +01:00
matejcik
5c93ecd53a core: create top-level storage module
This is to avoid including app-specific functionality in storage and
avoid circular imports. The following policy is now in effect: modules
from `storage` namespace must not import from `apps` namespace.

In most files, the change only involves changing import paths.

A minor refactor was needed in case of webauthn: basic get/set/delete
functionality was left in storage.webauthn, and more advanced logic on
top of it was moved to apps.webauthn.resident_credentials.

A significant refactor was needed for sd_salt, where application (and
UI) logic was tightly coupled with the IO code. This is now separated,
and storage.sd_salt deals exclusively with the IO side, while the app/UI
logic is implemented on top of it in apps.common.sd_salt and
apps.management.sd_protect.
2019-10-31 16:21:56 +01:00
Pavol Rusnak
39a532c8b1
core/webauthn: increase limit for resident credentials to 100 2019-10-31 14:27:46 +00:00
Pavol Rusnak
4979e17e86
core/webauthn: improve metadata 2019-10-30 17:53:09 +01:00
Tomas Susanka
1d1e9da1d3
Merge pull request #661 from trezor/tsusanka/webauthn-move-iface
core/webauthn: set webauthn interface in its app not in main.py
2019-10-30 15:37:33 +01:00
Tomas Susanka
26e2960532 core/webauthn: move boot to regular firmware block 2019-10-30 15:20:21 +01:00
Pavol Rusnak
58a865dd05
core/embed/unix: fix sdcard_init behaviour 2019-10-30 14:43:10 +01:00
Tomas Susanka
809b30ddcf core/webauthn: set webauthn interface in its app not in main.py
This way the other messages (WebAuthnListResidentCredentials etc.) get
registered in device debug build and can be tested.

Updates #591
2019-10-30 14:38:04 +01:00
Pavol Rusnak
727b7f8cd3
core/webauthn: add u2f/ctap2 metadata 2019-10-28 21:33:15 +01:00
Tomas Susanka
64a218eea0 bitcoin: simplify if expression 2019-10-28 15:35:58 +00:00
Tomas Susanka
c1f7239c2d ci: add click and persistence tests 2019-10-25 12:04:14 +00:00
matejcik
93062c4cc2 docs: improve docs, add random.md 2019-10-24 13:36:54 +02:00
Pavol Rusnak
0f1e30b235
core: fix typo in get_address 2019-10-24 11:42:40 +02:00
Pavol Rusnak
c617035a3e
core: bump version to 2.1.9 2019-10-24 09:16:24 +00:00
Pavol Rusnak
e67a359279
core: update changelog 2019-10-24 09:15:17 +00:00
Pavol Rusnak
5fe2f7e59c common/protob: remove ButtonRequest.data field 2019-10-24 11:11:43 +02:00
Pavol Rusnak
9a3d8ef2c4
core: show xpubs in GetAddress for multisig
also fix not showing MultisigRedeemScriptType.nodes correctly
2019-10-24 09:11:01 +00:00
Pavol Rusnak
322417d9ed
core/tezos: refactor bytes constants 2019-10-23 16:29:21 +00:00
Adrian Nagy
384275ac73
core/tezos: support the new protocol update (005-BABYLON) 2019-10-23 17:53:10 +02:00
matejcik
a5ccf95260 core: fix mypy problems 2019-10-22 17:06:49 +02:00
matejcik
8d2ae142f3 core/debug: at start, wait for first layout to show up 2019-10-22 17:06:49 +02:00
matejcik
a8fc569016 debug: add support for general layout waiting 2019-10-22 17:06:49 +02:00
matejcik
97525654bb core/debug: avoid running a handler when waiting for layout change
otherwise a running handler would prevent the default task from
starting, which would deadlock a test waiting for the default task
2019-10-22 17:06:49 +02:00
matejcik
3664a5f06f core/debug: reading layouts, inserting synthetic events 2019-10-22 17:06:49 +02:00
matejcik
8c3d93619e core: allow inserting synthetic touch events into event loop 2019-10-22 16:55:30 +02:00
matejcik
a1a543f781 core: boot debuglink in recovery homescreen 2019-10-22 16:55:30 +02:00
matejcik
06e10f948d protobuf: send x/y coordinates, allow waiting for layout change 2019-10-22 16:55:30 +02:00
matejcik
b25537f6b0 core: nicer output for cancellations 2019-10-22 16:54:49 +02:00
matejcik
d17f879d97 mypy: use GenericContext protocol to work-around DummyContext 2019-10-22 14:36:25 +00:00
matejcik
ed190c772c core: avoid circular import in sd_salt 2019-10-22 14:36:25 +00:00
Tomas Susanka
0511cc8b8c core: add final mypy fixes! 2019-10-22 14:36:25 +00:00
Tomas Susanka
8f34b4c5de
Merge pull request #628 from trezor/tsusanka/sdprotect-fix
Skip sd protect test on device
2019-10-22 15:40:03 +02:00
Pavol Rusnak
ddd9bee059
common/defs: regenerate coins 2019-10-22 09:03:32 +00:00
Pavol Rusnak
c2aa8a04c0
common/defs: update tokens 2019-10-22 10:59:52 +02:00
Pavol Rusnak
178d58c763
common/defs: remove BTDX as it has no Trezor compatible wallet 2019-10-21 09:48:19 +00:00
Pavol Rusnak
4e5b60ec2b
common/defs: remove BITC per maintainer request 2019-10-20 17:11:43 +00:00
Pavol Rusnak
3ebc79f9b2
common/defs: remove MEC per maintainer request 2019-10-19 17:14:32 +00:00
Pavol Rusnak
b79102008d
core: fix new Python SyntaxWarning (new in 3.8) 2019-10-18 17:59:37 +00:00
Tomas Susanka
b530e7c105 ci: add fido2 tests to ci 2019-10-18 16:54:00 +02:00
Andrew Kozlik
60f6ab9087 core: Fix mypy warnings. 2019-10-18 14:36:40 +02:00
Andrew Kozlik
39b4376b65 core/sd-protect: If writing to the SD card fails in request_sd_salt(), inform the user and allow them to retry or abort. 2019-10-18 14:34:43 +02:00
Pavol Rusnak
7644cb4c79
core: rework exception handling in boot.py 2019-10-18 10:20:11 +00:00
Pavol Rusnak
9b7a2095b3
common/defs: update coins info 2019-10-18 10:14:33 +00:00
Tomas Susanka
0f34b50c05 core/features: add sd card and protection 2019-10-17 16:04:11 +02:00
Tomas Susanka
f0cd99c545 common/protob: add sd card/protection to Features 2019-10-17 15:58:12 +02:00
Pavol Rusnak
d17ced9305
common/defs: remove ZCL as per maintainer request 2019-10-16 20:50:45 +00:00
Pavol Rusnak
d28bc3c3a6
common/defs: remove BSD - website does not exist, maintainer not reachable 2019-10-16 10:18:33 +00:00
Pavol Rusnak
3e20c51dbf
common/defs: remove MTNS - maintainer not reachable
website does not exist, backends don't work
2019-10-16 10:15:19 +00:00
Tomas Susanka
899a03dd1d docs/build: update debug build on device 2019-10-15 11:26:39 +02:00
Pavol Rusnak
e16c27a401
core: update changelog 2019-10-14 11:33:18 +02:00
Pavol Rusnak
ab62715606
core: bump version to 2.1.8 2019-10-12 19:13:44 +02:00
apollo
74bcc05e2e common/defs: add ZCR (#611) 2019-10-11 21:01:11 +02:00
Pavol Rusnak
76eefd026f
all: let's use -Wno-missing-braces because clang does not respect
initialization of structs with = {0};
2019-10-11 09:59:32 +02:00
Pavol Rusnak
1bdc83838b
legacy+core: properly handle non-printable ascii characters
(convert them to '_')
2019-10-10 15:58:26 +00:00
Pavol Rusnak
ab534c18d3
Merge pull request #612 from trezor/andrewkozlik/sd-protect-ui
SD-protect error handling
2019-10-10 15:48:27 +02:00
Andrew Kozlik
564b24191e debug: Add left and right swipe direction to DebugLinkDecision message and unify terminology around swipe direction. 2019-10-10 14:56:49 +02:00
Andrew Kozlik
9a641b6b01 core/sd-protect: Allow user to retry if write fails. 2019-10-10 12:17:36 +02:00
Andrew Kozlik
795fa07822 core/sd-protect: Add SD_CARD_HOT_SWAPPABLE option and improve error handling. 2019-10-10 12:17:36 +02:00
Andrew Kozlik
710866074b core/webauthn: Fix mypy warnings. 2019-10-09 18:13:48 +02:00
Andrew Kozlik
c25a41aa57 core: Fix mypy warnings in FatFS and SD salt code. 2019-10-09 17:07:25 +02:00
Andrew Kozlik
5401f88d52 core/webauthn: Fix user input timeout bug. 2019-10-09 15:18:25 +02:00
Tomas Susanka
a2fed79f7e
Merge pull request #603 from trezor/tsusanka/groups-info
Small refactor in Info dialog
2019-10-09 10:15:34 +02:00
Andrew Kozlik
e385eae433 core/webauthn: Use popups for webauthn error messages instead of confirmation dialogs to simplify device testing. 2019-10-08 13:29:15 +02:00
Andrew Kozlik
8ce8916beb core/webauthn: Remove AUTOCONFIRM option. 2019-10-08 13:29:04 +02:00
Sirak Ghazaryan
8317774e06 common/defs: enable CRW (#600) 2019-10-07 14:39:37 +02:00
Tomas Susanka
29bb2dcb95
Add unit test for process_slip39 function (#601)
Add unit test for process_slip39 function
2019-10-04 21:57:37 +02:00
Tomas Susanka
1068acae40 core/tests: assert secret in process_slip39 test 2019-10-04 13:47:52 +00:00
Tomas Susanka
74a283c271 core/recovery: small refactor in Info dialog 2019-10-04 15:21:39 +02:00
Andrew Kozlik
ba9eee3b8f core, legacy: Don't allow change_pin if device is not initialized. 2019-10-04 13:54:43 +02:00
Tomas Susanka
75dfcacc21 core/tests: add unit test for process_slip39 function
updates #542
2019-10-03 16:54:35 +02:00
matejcik
861e999425 core: draft unit test for process_slip39 2019-10-03 16:01:01 +02:00
Tomas Susanka
07b4f6e399 core/recovery: remove unused get/set_slip39_threshold 2019-10-03 09:57:35 +00:00
Pavol Rusnak
adbec13779
core/sd_salt: fix bug introduced in ede1a0bae3 2019-10-02 16:46:42 +00:00
Pavol Rusnak
04466402ce
core/monero: use const where possible 2019-10-02 15:45:36 +00:00
Pavol Rusnak
ed0336c0a9
core/monero: add gc.collect before large allocations in bulletproof code 2019-10-02 15:45:33 +00:00
Pavol Rusnak
5f980b50a0
core/monero: refactor bulletproof look-up-tables 2019-10-02 15:43:03 +00:00
Pavol Rusnak
ede1a0bae3
core/sd_salt: introduce _get_device_dir, _get_salt_path
prefix dialog functions with underscore
2019-10-02 15:39:42 +00:00
Pavol Rusnak
2217b680e3
core: update changelog 2019-10-02 10:00:10 +00:00
Pavol Rusnak
2e877b5762
core: refactor fido2 stuff into webauthn/fido2 2019-10-01 14:02:28 +00:00
Tomas Susanka
6b8f63c624 docs: improve tests documentation 2019-10-01 15:14:36 +02:00
matejcik
3c62db2696 stellar: fix ManageDataOp value padding 2019-10-01 15:12:37 +02:00
Andrew Kozlik
18998ff42f core/webauth: Remove "alg" parameter validation for key-agreement public keys to avoid compatibility issues. 2019-10-01 12:05:14 +02:00
Andrew Kozlik
4a81101c84 core/webauthn: Modify error handling to match fido2-tests. 2019-10-01 11:55:36 +02:00
Andrew Kozlik
9537bc40a5 core/webauthn: Use ECDH_ES_HKDF_256 instead of ES256 as the algorithm type for key-agreement keys.
ECDH_ES_HKDF_256 is the wrong type to use, since the key-agreement does not use HKDF, but ES256 is even more wrong, because it is an ECDSA type rather than an ECDH type. Currently there is no correct algorithm type defined. ES256 is used by libfido2, whereas ECDH_ES_HKDF_256 is used by Chrome, YubiKey and SoloKey, so it has the majority.
2019-09-30 19:37:46 +02:00
Pavol Rusnak
69142e56e7
core/tests: don't use curl, use wget 2019-09-30 12:46:00 +00:00
Andrew Kozlik
500401d81f core/webauthn: Place a 500 ms timeout on CTAP HID continuation packets. 2019-09-26 19:02:29 +02:00
Andrew Kozlik
0495d18b1e core/webauthn: Fix CTAP HID protocol to correctly handle invalid channel IDs and interleaving packets from different channels. 2019-09-26 19:02:29 +02:00
Andrew Kozlik
9ea8136545 u2f: Add keepersecurity.eu to knownapps. 2019-09-26 19:02:29 +02:00
Andrew Kozlik
e4c13b6357 u2f: Store hashes of U2F application parameters instead of pre-images. 2019-09-26 19:02:29 +02:00
Andrew Kozlik
6a33889706 common/webauthn: Add new URLs for gandi.net and Slush Pool. 2019-09-26 19:02:29 +02:00
Andrew Kozlik
528ee9ccf1 core/webauthn: Ensure user-presence option is not present in MakeCredential requests. 2019-09-26 19:02:29 +02:00
Andrew Kozlik
e341f133a3 core/webauthn: Add length checks in CTAPHID protocol. 2019-09-26 19:02:29 +02:00
Andrew Kozlik
ae70741e48 core/webauthn: Add more type checking for CBOR command parameters and return CTAP2_ERR_CBOR_UNEXPECTED_TYPE. 2019-09-26 19:02:29 +02:00
Andrew Kozlik
5ca4ed2347 core/webauth: Add _AUTOCONFIRM option for testing. 2019-09-26 19:02:29 +02:00
Andrew Kozlik
7ad1467dbf core/webauthn: Process debuglink signals in Fido2ConfirmGetAssertion. 2019-09-26 19:02:29 +02:00
Andrew Kozlik
3d91cb5c5b core/webauthn: Return ERR_MISSING_PARAMETER instead of generic error. 2019-09-26 19:02:29 +02:00
Andrew Kozlik
eaf63fff45 core/webauthn: In GetAssertion do not return user ID for server resident credentials. 2019-09-26 19:02:29 +02:00
Andrew Kozlik
f54c968039 core/webauthn: Validate U2F key handle length. 2019-09-25 21:06:36 +02:00
Andrew Kozlik
638a861137 core/webauthn: Add U2F_V2 to authenticatorGetInfo supported versions. 2019-09-25 20:00:11 +02:00
Andrew Kozlik
cf6949332f core/webauthn: Claim that PIN is set even when it's not, because login.live.com shows an error, but doesn't instruct the user to set a PIN. 2019-09-25 20:00:11 +02:00
Andrew Kozlik
5e99058832 common/webauthn: Add webauthn RP ID for google.com. 2019-09-25 19:59:59 +02:00
Pavol Rusnak
40c66e6d85
core: handle removal of non-existing PIN in require_confirm_change_pin 2019-09-25 17:35:37 +00:00
Pavol Rusnak
ad76b5fb9f
core: regenerate mocks 2019-09-25 10:27:04 +00:00
Pavol Rusnak
dcff4ade01
core: use set_clr_card_detect to disable SD card pull-up resistor 2019-09-25 12:13:53 +02:00
Pavol Rusnak
6c14ee7ec0
core: initialize fatfs only after we know the SD card is powered 2019-09-25 12:13:52 +02:00
Pavol Rusnak
7394ecfa77
core: add exist_ok parameter to fatfs.mkdir 2019-09-25 12:13:52 +02:00
Pavol Rusnak
d393fc6e85
Revert "core: replace BITCOIN_ONLY with a constant only in src/trezor/utils.py"
This reverts commit b9e7e93bcf.

Unfortunately this does not work, compiler cannot see it is a literal constant,
so it won't get optimized out, even when we use const(0). Also const(False)
is not supported at all.
2019-09-25 12:05:13 +02:00
Tomas Susanka
f53694c3fe core/recovery: rename variable and add a comment in Info button 2019-09-24 16:12:19 +02:00
Tomas Susanka
6c6bd44ee8 core/recovery: fix Info button when the threshold was reached (#566) 2019-09-24 16:10:09 +02:00
matejcik
65d2a55bff core/recovery: improve comment 2019-09-24 14:07:46 +02:00
matejcik
02ee0b63c0 core/recovery: fix type signature of _process_words 2019-09-24 14:07:08 +02:00
matejcik
1c53c2bdf2 core/recovery: allow changing word count again (fixes #554) 2019-09-24 14:04:51 +02:00
Tomas Susanka
7f959250e7
Merge pull request #563 from trezor/tsusanka/562-fix-info-btn
core/recovery: fix Info dialog
2019-09-24 13:20:14 +02:00
ciny
1337ff97b7 core: fixed confirmation screen during advanced slip39 reset flow 2019-09-24 12:11:18 +02:00
Tomas Susanka
51bf0dde12 core/recovery: fix Info dialog
closes #562
2019-09-24 11:23:29 +02:00
Pavol Rusnak
78041d261b
crypto: refactor bip39 api 2019-09-23 17:56:36 +02:00
Andrew Kozlik
524a2ac721 core: Show success dialogs in sd-protect. 2019-09-23 10:38:58 +02:00
Andrew Kozlik
a7485c0840 core: In sd-salt and webauthn error dialogs replace "X" button with "Close" button. 2019-09-23 10:38:58 +02:00
Andrew Kozlik
de74750569 core: Show success and failure dialogs in change-pin. 2019-09-23 10:38:58 +02:00
Pavol Rusnak
b9e7e93bcf
core: replace BITCOIN_ONLY with a constant only in src/trezor/utils.py 2019-09-22 15:07:04 +02:00
Pavol Rusnak
bb4dd3cf18
core: respect PYOPT in firmware build 2019-09-20 23:35:47 +02:00
matejcik
03f1403c93 core: clean up backup type handling in reset_device 2019-09-20 18:00:14 +02:00
matejcik
78ecc38b1b core: fix BIP39 backup
Refers to #550. Not marking fixed because we need more tests.
2019-09-20 17:14:59 +02:00
Tomas Susanka
eca0a719db core: bump version to 2.1.7 2019-09-20 15:00:34 +02:00
Pavol Rusnak
702f865e8d
core/webauthn: let's use Self Attestation for now 2019-09-20 12:07:49 +02:00
Tomas Susanka
5d32fc37ae core/changelog: complete 2.1.6 changelog 2019-09-20 12:07:11 +02:00
Andrew Kozlik
576a211c3d core: Clarify the messages on the screens and get rid of overflows. 2019-09-20 12:06:32 +02:00
Tomas Susanka
bf518665a0
Merge pull request #546 from trezor/tsusanka/1of1
core: enable 1of1 in reset device
2019-09-20 10:37:37 +02:00
Tomas Susanka
e25686e079 core: enable 1of1 in reset device
updates #500
2019-09-20 10:12:33 +02:00
Tomas Susanka
871e159bee core/recovery: remove group threshold from storage 2019-09-20 09:47:15 +02:00
Tomas Susanka
6731d1bbf2 core/recovery: remove word count and backup type 2019-09-20 09:46:49 +02:00
Tomas Susanka
cf5a794436 core/storage: swap arguments in recovery_shares.set 2019-09-20 09:22:30 +02:00
Tomas Susanka
6938d2b238
Merge pull request #541 from trezor/ciny/slip39_various_fixes
core: various fixes to slip39
2019-09-20 09:20:31 +02:00
Pavol Rusnak
39a1e308a0
core/webauthn: change the default icon 2019-09-20 00:33:48 +02:00
Andrew Kozlik
9efc3b4431
core/webauthn: Use basic attestation in FIDO2 MakeCredential responses. 2019-09-19 20:28:51 +02:00
Pavol Rusnak
8da121ff5c
core+python: regenerate coins 2019-09-19 20:17:35 +02:00
matejcik
e14edd77a9 core: simplify confirm_share_words 2019-09-19 17:34:02 +02:00
matejcik
e4ac47b0b3 core: simplify fetch_slip39_remaining_shares 2019-09-19 17:27:23 +02:00
Andrew Kozlik
8024f6d069 core/storage: Rename APP_FIDO2 to APP_WEBAUTHN. 2019-09-19 17:17:22 +02:00
Pavol Rusnak
68513a0b39
Merge pull request #538 from trezor/andrewkozlik/fido2-signcount
Disable FIDO2 signature counter for some relying parties
2019-09-19 17:00:51 +02:00
ciny
cb029fa905 core: various fixes to slip39 2019-09-19 16:42:10 +02:00
Tomas Susanka
cefb1cf4fd core: refactor slip39 2019-09-19 16:38:29 +02:00
Andrew Kozlik
315a30b42b core/webauthn: Disable FIDO2 signature counter for some relying parties 2019-09-19 16:16:58 +02:00
Pavol Rusnak
649d14898f
core/tests: remove also sdcard files in test runner 2019-09-18 19:14:35 +02:00
Andrew Kozlik
a5f5a1709f core/tests: Increase sleep to 30 after emulator launch to allow for FatFS.mkfs. 2019-09-18 18:55:58 +02:00
Andrew Kozlik
f5ea81f905 core: Move some PIN-related functions to apps.common.request_pin and implement verify_user_pin(). 2019-09-18 18:55:58 +02:00
Andrew Kozlik
262434ea1b python/tests: Add SD protection device test. 2019-09-18 18:55:58 +02:00
Andrew Kozlik
6350b1c61c core: Implement SD card protection. 2019-09-18 18:55:58 +02:00
Andrew Kozlik
06fc676cc9 common/messages: Add SdProtect message. 2019-09-18 18:53:42 +02:00
Andrew Kozlik
4f01003637 storage: Add external salt parameter to unlock() and change_pin(). 2019-09-18 18:53:42 +02:00
Pavol Rusnak
69d936a390
core: remove unused script 2019-09-18 17:23:27 +02:00
Tomas Susanka
5c9fd5875a core/recovery: inform about ToS
updates #495
2019-09-18 12:26:53 +02:00
Andrew Kozlik
b89a9dc590 core: Implement credential management. 2019-09-17 18:32:31 +02:00
Andrew Kozlik
091053507d common/messages: Add credential management message. 2019-09-17 18:32:31 +02:00
Pavol Rusnak
650db2a5c0
ci: add u2f tests to CI 2019-09-14 14:47:45 +02:00
Pavol Rusnak
9414a2b2f5
tests: fix file permissions 2019-09-14 14:41:12 +02:00
Andrew Kozlik
5472499326 core/webauthn: Process debuglink signals in dialogs (#519) 2019-09-13 18:34:23 +02:00
Ciny
a0180d233e
Merge pull request #494 from notatestuser/improve-binance-ux
Binance UX improvements
2019-09-13 15:05:55 +02:00
Tomas Susanka
e4c8cb1315
core: move public_key_to_wif to helpers 2019-09-13 12:55:04 +02:00
Tomas Susanka
adedb7df97
core: remove underscores in symbols used externally
closes #504
2019-09-13 12:55:04 +02:00
Pavol Rusnak
2711ce2a3d
Merge pull request #394 from trezor/andrewkozlik/fido2-squashed
Add FIDO2 support
2019-09-13 11:20:48 +02:00
Tomas Susanka
75c539ec55
all: replace /bin/bash with /usr/bin/env bash 2019-09-12 17:35:55 +02:00
matejcik
cad297ed36 style: fix weirdness in modtrezorio-fatfs.h 2019-09-12 16:49:51 +02:00
Andrew Kozlik
58c2691ad9 core/pin: Avoid flicker in remaining time message. 2019-09-12 12:04:01 +02:00
Andrew Kozlik
6ee1ea0fde core/webauthn: Add README.md. 2019-09-12 12:04:01 +02:00
Andrew Kozlik
26193245d4 core/webauthn: Generate random part of U2F key handles with uniform distribution. 2019-09-12 12:04:01 +02:00
Andrew Kozlik
5020ae9757 core/tests: Test SLIP-0022 FIDO2 credential decode. 2019-09-12 12:04:01 +02:00
Andrew Kozlik
70fe14e84c core/webauthn: Implement CTAP2 protocol for FIDO2 support. 2019-09-12 12:04:01 +02:00
Andrew Kozlik
6366f3ac0d core/storage: Implement storage of FIDO2 resident credentials. 2019-09-12 11:46:19 +02:00
Andrew Kozlik
de183849b9 core/webauthn: Implement SLIP-0022 FIDO2 credential ID format. 2019-09-12 11:46:13 +02:00
Andrew Kozlik
f658958057 core/ui: Add ui.alert() for CTAP WINK command. 2019-09-11 15:33:16 +02:00
Andrew Kozlik
509a815f73 core/ui: Implement multi-page confirmation screen. 2019-09-11 15:33:16 +02:00
Andrew Kozlik
1f58ee7ae9 core/ui: Add text_center_trim_left() and text_center_trim_right(). 2019-09-11 15:33:16 +02:00
Andrew Kozlik
84674a7463 core/usb: Add write_blocking() to trezor.io.HID. 2019-09-11 15:33:16 +02:00
Andrew Kozlik
5cbbcd0ce7 core/ui: Add offset parameter to ui.pulse() and specify the pulse rate in terms of period. 2019-09-11 15:33:16 +02:00
Andrew Kozlik
2142b37f86 core/usb: Ensure that USB interface is not busy before writing. 2019-09-11 15:33:16 +02:00
Pavol Rusnak
6ad3294f31
core: fix visibility of apps.common.device.U2F_COUNTER 2019-09-11 09:51:51 +02:00
Pavol Rusnak
e7955357b0
core: fix style 2019-09-10 13:48:25 +02:00
Pavol Rusnak
898c421752
core: enable debuglink+webauth together in the emulator firmware 2019-09-09 17:59:49 +02:00
Pavol Rusnak
a635ba6bff
build: clean up build-docker scripts a little 2019-09-08 16:21:16 +02:00
Milan Rossa
f962a18785
core: enhance testing runners 2019-09-07 11:29:55 +02:00
Pavol Rusnak
f87d033345
core: rename PROFILING to TREZOR_PROFILING in trezor_cmd.sh 2019-09-07 11:22:21 +02:00
Tomas Susanka
3cb023ec21 core: add Capabilities to 2.1.5 changelog 2019-09-06 11:05:07 +02:00
Tomas Susanka
b7d2fa9643 core: add Binance to 2.1.5 changelog 2019-09-06 10:57:51 +02:00
Tomas Susanka
c66a1e7780
Merge pull request #497 from romanz/segwit-multisig
core/wallet: fix segwit multisig comment
2019-09-05 10:59:21 +02:00
Roman Zeyde
cb04f5774b core/wallet: fix segwit multisig comment 2019-09-04 13:34:30 +03:00
Pavol Rusnak
bfe01707b1
build: add BITCOIN_ONLY variable to docker build scripts 2019-09-04 12:16:55 +02:00
Luke Plaster
9c2d911dcb core: improve binance ux 2019-09-04 12:21:25 +08:00
Pavol Rusnak
9d5bac50fd
core: alphabetically order files in SConscript files 2019-09-03 18:15:47 +02:00
Pavol Rusnak
854045c019
build: fix file order in SConscript.unix 2019-09-03 16:24:33 +02:00
Ondrej Mikle
59ee3750d1
core/modtrezorio: raise exception when directory listing fails on disk error or other error 2019-09-03 15:14:35 +02:00
Ondrej Mikle
24359ea074
core/modtrezorio: use upstream's fix of read-after-buffer 2019-09-03 15:14:25 +02:00
Ondrej Mikle
972a96f1a0
core/modtrezorio: raise error when no space left on FAT FS 2019-09-03 15:14:25 +02:00
Pavol Rusnak
743f57afdb
core/modtrezorio: use ff_unifdef.sh preprocessor
to reduce the number of lines in ff.c and ffunicode.c
2019-09-03 15:14:25 +02:00
Pavol Rusnak
49a98a5015
core/modtrezorio: enable FatFS.mkfs only in emulator 2019-09-03 15:14:25 +02:00
Pavol Rusnak
d40b7c0385
core/modtrezorio: enable LFN+Unicode in FatFS 2019-09-03 15:14:25 +02:00
Pavol Rusnak
aa8d14c0ea
core/modtrezorio: add FatFS support 2019-09-03 15:14:24 +02:00
Pavol Rusnak
ecceed018e
core/tests: make binance sign_tx test vector more readable 2019-09-03 15:09:12 +02:00
Luke Plaster
3eff86d17b core: fix the "coin" blueprint (#488) 2019-09-03 14:47:29 +02:00
ciny
ec4dd38888 core: #482 fix binance divisibility 2019-09-03 09:12:04 +02:00
Pavol Rusnak
7c74f1c54c
core: fix style 2019-09-02 13:49:46 +02:00
Jan Pochyla
355cebf8bf core: wait for the default layout after closing a workflow
Fixes #469
2019-09-02 12:52:09 +02:00
Jan Pochyla
ccb926af53 core: improve log messages in workflow and wire 2019-09-02 12:52:09 +02:00
Pavol Rusnak
bdaf4cd069
core: update ChangeLog 2019-09-02 12:46:20 +02:00
Andrew Kozlik
c1f0c642df core: cache seed without passphrase (#478) 2019-09-02 12:09:03 +02:00
TheCreator
64034c6d7d common: enable UNO (#472) 2019-09-01 09:47:58 +02:00
Roman Zeyde
680e18a4ba core/seed: add SLIP-0077 derivation to Keychain (#398)
Following #66 and #317, it would allow deriving confidential addresses and
unblinding confidential transactions' outputs.
2019-08-31 19:04:00 +02:00
Pavol Rusnak
324cb651c6
core+legacy: update bootloader ChangeLogs 2019-08-30 16:15:04 +02:00
Pavol Rusnak
dbef93a30d
core: enable firmware build without SDL2 installed
SConstruct includes SConscript.unix even for the firmware builds,
which resuls in error if SDL2 is not installed.
This commit workarounds the issue.

Is there a better way how to NOT include SConscript.unix via
SConstruct for firmware only builds?
2019-08-29 12:35:16 +02:00
Pavol Rusnak
1a71c7a3e8
common: rename Features.features to Features.capabilities 2019-08-28 15:02:30 +02:00
Jan Pochyla
34ec1ed294 core/webauthn: fix bug introduced in bb2556
Fixes #448
2019-08-28 14:27:32 +02:00
Pavol Rusnak
9cef06de2b
core+legacy: update ChangeLogs 2019-08-28 13:59:42 +02:00
Pavol Rusnak
dde4c12796
common: add Feature.ShamirGroups to features 2019-08-28 09:25:11 +02:00
Pavol Rusnak
93f18b09bd
core+python: regenerate Features 2019-08-27 17:30:49 +02:00
Pavol Rusnak
74bc83726c
common: add Feature.Shamir to features 2019-08-27 17:17:26 +02:00
Tomas Susanka
72f6bf51cd
Merge pull request #446 from trezor/andrewkozlik/shamir-wording
core: Improve Super Shamir texts.
2019-08-27 17:10:30 +02:00
Andrew Kozlik
90bd453d0a core: Improve Super Shamir texts. 2019-08-27 16:03:11 +02:00
Tomas Susanka
f5af4e4fe0 core: bump version to 2.1.6 2019-08-27 14:39:06 +02:00
Tomas Susanka
73e59bb84c core: add changelog for 2.1.5 2019-08-27 14:39:06 +02:00
Tomas Susanka
fd53c72a3c
Merge pull request #428 from trezor/ciny/super_shamir
UI for multi level Shamir reset and recovery
2019-08-27 13:22:32 +02:00
ciny
9595800158 core: store correct backup type during recovery 2019-08-27 13:10:08 +02:00
Pavol Rusnak
32edf7b6b9
core: fix unit tests for Bitcoin only firmware 2019-08-27 12:38:29 +02:00
Pavol Rusnak
908bbfffef
core: remove remaning utility code for Bitcoin only firmware 2019-08-27 12:38:28 +02:00
Pavol Rusnak
c815bc410c
core: remove remaning Decred/Zcash code for Bitcoin only firmware 2019-08-27 12:38:28 +02:00
ciny
81f5cbef93 core + tests: Super shamir reset and recovery UI and tests 2019-08-27 11:50:42 +02:00
Tomas Susanka
077735f57b ci: introduce upgrade tests
closes #126
2019-08-26 16:02:06 +02:00
matejcik
6481316ac5 core/ethereum: fix typo in wanchain detection (in template also) 2019-08-26 14:43:43 +02:00
matejcik
b0b286aafe core/ethereum: fix typo in wanchain detection
Reason it worked before: this function would fail to find a network
for wanchain, but the `network` value is only used to determine if
RSKIP60 should be used. That is almost never the case, so missing
network info did not cause an issue.
2019-08-26 14:28:05 +02:00
matejcik
2022c39ef9 core/ethereum: add support for wanchain slip44 id (#440) 2019-08-25 16:36:14 +02:00
Pavol Rusnak
8a61ef4f6e
core: unroll the utils.BITCOIN_ONLY constant in mpy-cross 2019-08-23 13:52:14 +02:00
Pavol Rusnak
4036f2243b
core: introduce linker script for BITCOIN_ONLY 2019-08-23 13:52:14 +02:00
Pavol Rusnak
9ae319211f
core: fill in Features.features 2019-08-23 13:52:14 +02:00
Pavol Rusnak
07ef01f3e4
core: introduce BITCOIN_ONLY flag 2019-08-23 13:52:10 +02:00
Tomas Susanka
566753e551 core: fix style 2019-08-23 12:35:17 +02:00
Pavol Rusnak
e1f0c238cf
core: fix utils.format_amount for negative amounts 2019-08-23 12:24:17 +02:00
Ryxor
2c709ee162 common/defs: add Umbru (#433) 2019-08-23 11:59:30 +02:00
matejcik
3467cbe236 core/cardano: do not force-show homescreen 2019-08-22 18:33:13 +02:00
Pavol Rusnak
876ba5f590
tests: make path to tested binary configurable 2019-08-22 17:47:36 +02:00
Jan Pochyla
29153f0e51 core/log: be less noisy with ui.Cancelled exceptions 2019-08-22 17:37:31 +02:00
Jan Pochyla
7789a29d50 core/loop: fix last commit 2019-08-22 17:36:04 +02:00
Jan Pochyla
2c8b90f86e core/loop: properly cleanup task waiting on a chan 2019-08-22 17:29:21 +02:00
Jan Pochyla
29cca614f0 core/workflow: properly reset the default task global 2019-08-22 17:23:35 +02:00
Jan Pochyla
6d1a315b0e core/homescreen: render homescreen in a layout
FIxes a bug introduced in bb25562
2019-08-22 16:08:38 +02:00
Tomas Susanka
f07694116c docs: emulator's variables 2019-08-22 15:39:53 +02:00
Tomas Susanka
16b44b6f7b core: improve log output for ui.Result exception (#429)
* core: improve log output for ui.Result exception

updates #373

* core: avoid importing ui module
2019-08-22 15:31:20 +02:00
Pavol Rusnak
132c841752
core: preparations for bitcoin-only firmware 2019-08-21 18:53:08 +02:00
Pavol Rusnak
76719bab65
core: split handling of messages in the build script 2019-08-21 18:45:07 +02:00
Pavol Rusnak
632a29ea8c
core: fix typo 2019-08-21 18:09:56 +02:00
Pavol Rusnak
774ca02c41
core: refactor FROZEN and PYOPT in SConscript.firmware 2019-08-21 18:04:15 +02:00
Pavol Rusnak
2c646a61b7
core: refactor FROZEN variable in SConscript.unix 2019-08-21 17:50:09 +02:00
Pavol Rusnak
b8726e74c8
core: add possibility to pass PYOPT to emulator frozen build 2019-08-21 17:46:30 +02:00
Tomas Susanka
b65cabc67c
Merge pull request #425 from trezor/tsusanka/iss387-init-fix
core: fix initialized to be unrelated to recovery
2019-08-21 15:51:45 +02:00
Tomas Susanka
ba7b5c7232 core/ui: add note on yield usage 2019-08-21 15:14:33 +02:00
Tomas Susanka
c9a78d7bcb core: fix docs typos 2019-08-21 15:12:21 +02:00
Tomas Susanka
d0ce2b9e39 core: fix initialized to be unrelated to recovery
closes #387
2019-08-21 14:10:36 +02:00
Tomas Susanka
4323b0ac2a core: rename recovery keyboards
closes #301
2019-08-21 13:48:24 +02:00
Pavol Rusnak
f51f9d9be1
core: one more change to previous commit 2019-08-21 11:33:04 +02:00
Pavol Rusnak
f8ebd4fa0b
core: fix last commit 2019-08-21 11:28:28 +02:00
Pavol Rusnak
c4e745a0d6
core: update build scripts to list python source more explicitly 2019-08-21 11:24:16 +02:00
Tomas Susanka
ba74cc2880 core: change pubkeys to List 2019-08-21 11:14:11 +02:00
Pavol Rusnak
0f6e06e1e5
common/tools: reorder coins in coin_info.py so Regtest appears at the beginning 2019-08-21 11:06:02 +02:00
Tomas Susanka
debb8ec478
Merge pull request #422 from romanz/typing
core/wallet: fix 'pubkeys' type to be list
2019-08-21 10:48:00 +02:00
Roman Zeyde
5b3427a21d core: ensure multisig (m,n) parameters are valid (#423) 2019-08-20 19:18:34 +02:00
Pavol Rusnak
1eb823be03
core: fix permissions of apps/eos source files 2019-08-20 18:08:00 +02:00
Roman Zeyde
acfd6b7771 core/wallet: fix 'pubkeys' type to be list 2019-08-20 17:55:13 +03:00
Jan Pochyla
bb2556a22c
core: improve code documentation, simplify wire package
* docs: improve loop.py, ui.init

* docs: improve trezor.loop, rename spawn to race

* docs: wire

* core/wire: simplify and document the session handler

* core/wire: improve documentation

* core/wire: improve docs

* core/docs: document ui.grid function

* core: decouple ui and workflow, document both

* core: improve docs


Co-authored-by: Tomas Susanka <tsusanka@gmail.com>
2019-08-20 16:20:02 +02:00
Pavol Rusnak
cc184a0a30
common: introduce Features.features enum 2019-08-20 14:38:31 +02:00
Roman Zeyde
588998cb85 apps/wallet: support Signify Ed25519 signatures (#348) 2019-08-19 15:20:39 +02:00
omtns
1bb77b81c0 common/defs: enable MTNS (#415) 2019-08-16 17:29:50 +02:00
Marius Kjærstad
1d6ea33ec6 docs: switch http to https in links (#419) 2019-08-16 17:28:15 +02:00
Tomas Susanka
e119e8de96 core/slip39: fix UI for 33 words
closes #395
2019-08-14 11:16:15 +02:00
Tomas Susanka
542f156b4f core/slip39: remove _encrypt
(cherry picked from commit 53ca61ab00)
2019-08-13 17:25:53 +02:00
Tomas Susanka
1b666804c0 core/shamir: fix EMS vs MS
(cherry picked from commit cb94454618)
2019-08-13 17:25:47 +02:00
Tomas Susanka
0f742bc3a7 core: bump to 2.1.5, add changelog for 2.1.4 2019-08-12 13:48:54 +02:00
matejcik
eaf1e940a8 build: update test runners for new paths 2019-08-12 12:57:25 +02:00
matejcik
872e66efca tests: drop pytest customization from core
it will no longer possible to run just `pytest` from core subdir
2019-08-12 12:57:25 +02:00
Roman Zeyde
7210a2f56d common/defs: add 'confidential_assets' section to coin definitions (#399)
Enable 'confidential_assets' for Elements (following #66 and #317) to allow
deriving confidential addresses and signing confidential transactions.

The following Python helper script was used to update the JSON files:
```
import json
import sys

for f in sys.argv[1:]:
    d = json.load(open(f))
    d["confidential_assets"] = None
    with open(f, "w") as o:
        json.dump(d, o, indent=2)
        o.write("\n")
```

Set it to `{'address_prefix': 4, 'blech32_prefix': 'el'}` for Elements.

`coins.json` and `coininfo.py` were re-generated using:
```
$ pipenv run make gen gen_check
```
2019-08-12 12:52:20 +02:00
matejcik
c285bbba7a core: dispatch DebugLinkDecisions from a common queue 2019-08-09 16:53:12 +02:00
matejcik
741bfd5c53 core: remove loop.signal in favor of chan, change usage 2019-08-09 16:53:12 +02:00
matejcik
f680f0c0d3 core: unify NEM pager confirm with rest of codebase 2019-08-09 16:53:12 +02:00
matejcik
cf70f82d90 core: debug messages when reading from wire
fixes #373
2019-08-09 16:53:12 +02:00
matejcik
0890f68c0c core: use channels to give feedback over debuglink
all debug input signals are now channels, and DebugLinkDecision handler
waits until the input was consumed. This means that the input events are
queued; originally, if an input event arrived before the previous was
consumed, the previous input would be lost.

reset words and their positions are now also channels, and
DebugLinkGetState can wait for their updates, if required
2019-08-09 16:53:12 +02:00
matejcik
6e7fc5f601 core: implement channels for sending messages 2019-08-09 16:53:12 +02:00
Pavol Rusnak
e23bb10ec4
core+legacy: fix KMD signing (introduce negative_fee coin field) 2019-08-09 16:47:24 +02:00
Tomas Susanka
024f4d64af core/reset: modify confirmation sentence 2019-08-09 15:50:56 +02:00
Tomas Susanka
35ecfbcb3d build 2019-08-09 13:34:46 +02:00
Andrew Kozlik
cb7bc8f410 core: Fix mypy warnings. 2019-08-09 12:52:55 +02:00
Andrew Kozlik
55f69becff core/tools: Clarify hid-bridge README. 2019-08-09 12:46:41 +02:00
Andrew Kozlik
1d56b8b9a1 webauthn: Add login.microsoft.com to knownapps. Add Microsoft icon. 2019-08-09 12:46:28 +02:00
Andrew Kozlik
8297b81cd5 core/crypto: Add AES mode constants. 2019-08-09 12:46:08 +02:00
Tomas Susanka
db2ce2055d docs: add link to a built version of the docs 2019-08-08 11:38:32 +02:00
Tomas Susanka
107ae697aa docs: do not ignore build subdirectory 2019-08-08 11:12:17 +02:00
Pavol Rusnak
eaa85ddd6e
core+legacy: add new changelog entries 2019-08-07 15:42:33 +02:00
Jan Pochyla
6835748bbf core/protobuf: fix 5b6fa113 2019-08-07 10:59:22 +02:00
Tomas Susanka
e897f7cf7f core: fix unit tests
test_protobuf.py is failing because of `del ffields` introduced by 5b6fa1136a
2019-08-07 10:04:38 +02:00
Tomas Susanka
0ac0daf148 core: bump to 2.1.4 2019-08-06 22:06:44 +02:00
Jan Pochyla
943ed73166 core/ui: remove workaround, fixed properly in c9096d9 2019-08-06 15:43:17 +02:00
Jan Pochyla
5b6fa1136a core: improve typing annotations 2019-08-06 15:42:23 +02:00
Andrew Kozlik
0a594ea1e9
Merge pull request #280 from trezor/andrewkozlik/slip-0021
Add SLIP-0021 implementation and tests.
2019-08-06 14:26:34 +02:00
Tomas Susanka
c8b95838b5 docs: restructure, add SUMMARY, add a few things 2019-08-06 10:44:48 +02:00
Jan Pochyla
c9096d9a0a core/ui: mark Controls as dirty in the beginning 2019-08-05 15:41:44 +02:00
matejcik
aa9860fdb7
protobuf: add enum value validation (#363) 2019-08-02 19:06:01 +02:00
Tomas Susanka
0bc847ff7f docs: remove old api.md article 2019-08-02 14:06:36 +02:00
Tomas Susanka
e30159c000 docker: remove
It seems to me 1) it does not work 2) no one actually uses this.
2019-08-02 10:35:11 +02:00
Tomas Susanka
776071e220
core/embed: add hint in fatal error on unix (#378)
core/embed: add hint in fatal error on unix
2019-08-02 10:22:07 +02:00
Pavol Rusnak
007f3aa6de
core: use uppercase for cashaddr QR codes 2019-08-01 17:48:07 +02:00
Tomas Susanka
4b1955dcd3 core/embed: add hint in fatal error on unix 2019-08-01 15:40:24 +02:00
Tomas Susanka
46c10e9402 core/shamir: end recovery mode after Success screen 2019-07-31 17:43:51 +02:00
Ciny
90b91a7fb5 #28 - binance implementation (#189)
- placeOrder, cancelOrder, transfer messages
- cli support
- unit and device tests
2019-07-31 17:02:41 +02:00
Tomas Susanka
e4a69dcc53 core/docs: fix toif_convert link 2019-07-30 14:12:23 +02:00
Tomas Susanka
ac2acb0b5a core: mnemonic mypy 2019-07-30 11:22:56 +02:00
Tomas Susanka
4030874c7e core: some mypy in recovery-related modules 2019-07-29 17:24:59 +02:00
Andrew Kozlik
c1c23cb5cb core/tests: Add more tests for Cardano with SLIP-0039. 2019-07-29 14:02:52 +02:00
Tomas Susanka
6af7a6b3d6 core: bump version to 2.1.3 2019-07-29 13:48:54 +02:00
Tomas Susanka
4da54f95d6 core/shamir: remove checked icon from future items in Backup checklist 2019-07-29 13:42:20 +02:00
Tomas Susanka
81a1b26fad core/shamir: fix texts 2019-07-29 12:51:02 +02:00
Tomas Susanka
4117f3506c core/shamir: text improvements 2019-07-26 16:51:56 +02:00
Tomas Susanka
a8c9a4ddc4 core/shamir: send boolean flag in Features that Recovery is in progress 2019-07-26 16:38:05 +02:00
Tomas Susanka
5bd8ad321e core/shamir: increase default iteration exponent to 1 2019-07-26 15:56:53 +02:00
Pavol Rusnak
529ec95c93
core: fix unit tests for omni 2019-07-26 15:55:27 +02:00
Pavol Rusnak
c288514a4f
core+legacy: fix display of non-divisible OMNI amounts 2019-07-26 12:59:10 +02:00
Tomas Susanka
c735299bd0 core/backup: fix mnemonic_module to mnemonic_type 2019-07-26 12:06:00 +02:00
Andrew Kozlik
217c910b4b cardano: Implement SLIP-0023 and add SLIP-0039 support for Cardano. 2019-07-25 19:43:05 +02:00
Tomas Susanka
2b6a14cb5f core: support load device with SLIP-39
updates #356
2019-07-24 15:45:52 +02:00
Tomas Susanka
e95a97f281 common/protobuf: set mnemonic as repeated in LoadDevice for SLIP-39 support 2019-07-24 15:45:52 +02:00
Jan Pochyla
ebe883e4a9 core: support rebooting into default mode 2019-07-24 15:12:04 +02:00
Tomas Susanka
d2597d54c1 core/shamir: persistence
updates #270
2019-07-24 15:12:04 +02:00
Tomas Susanka
8f4bbb8825 core/homescreen: move err and warn to ui module 2019-07-24 12:55:12 +02:00
Tomas Susanka
539379bd55 core: alter reset_device to use enum 2019-07-22 15:43:15 +02:00
Tomas Susanka
1480f754f4 build 2019-07-22 15:32:41 +02:00
Tomas Susanka
7c0a20b5bb core: add common page for success and warning 2019-07-16 14:49:23 +02:00
Andrew Kozlik
5d561a0e53 core/tests: Fix Keychain usage in test_apps.wallet.signtx.fee_threshold. 2019-07-16 14:30:30 +02:00
Andrew Kozlik
58e06ba22c core/seed: Ensure ed25519 paths are hardened in Keychain.derive(). 2019-07-16 14:30:30 +02:00
andrew
5f604b5fea core/seed: Add SLIP-0021 implementation and tests. 2019-07-16 14:30:28 +02:00
Tomas Susanka
db0847282a core/reset: check three words
closes #289
2019-07-16 09:58:44 +02:00
Tomas Susanka
96cdd886bc core: fix Hold To Confirm button 2019-07-15 14:16:49 +02:00
Tomas Susanka
d073102422 core/ripple: increase the maximum amount allowed to be sent
The maximum amount is defined in [Ripple's docs](https://xrpl.org/basic-data-types.html#currencies) but it's most likely in XRP and not in drops ("satoshi" equivalent). This commit increase the value to the drops equivalent.

closes #327
2019-07-15 13:34:14 +02:00
Tomas Susanka
5134cd0b80 core: add backup warnings at correct place; add backup success page
closes #287
2019-07-15 11:17:40 +02:00
Tomas Susanka
baaba41447 docs: move git hooks to core docs and update 2019-07-12 12:53:32 +02:00
Andrew Kozlik
b9f63c3f55 webauthn: Add Binance to knownapps. Add Binance icon. 2019-07-12 11:38:44 +02:00
Tomas Susanka
ce312e484b
Show total number of words during device recovery (#320)
Show total number of words during device recovery
2019-07-09 16:30:28 +02:00
Tomas Susanka
841a27257e
Shamir reset device tests (#319)
Shamir reset device tests
2019-07-09 15:43:53 +02:00
ciny
11b9f1c4e8 core: show total number of words during device recovery 2019-07-09 15:40:41 +02:00
ciny
bdfdaa9bb1 core: added device tests for shamir reset 2019-07-09 14:09:12 +02:00
Jan Pochyla
081e459075 core: fix various types 2019-07-09 14:05:35 +02:00
Jan Pochyla
0f6f05e4b7 core/typing: fix extmod docs and mocks 2019-07-09 14:05:14 +02:00
Jan Pochyla
758a1a2528 core/typing: add annotations 2019-07-09 12:51:48 +02:00
Jan Pochyla
86e16bbf31 messages: add types 2019-07-09 12:51:48 +02:00
Jan Pochyla
3af75c0b8b core/typing: improve extmod types 2019-07-09 12:51:48 +02:00
Jan Pochyla
f5299456a9 core/typing: add mypy 2019-07-09 12:51:48 +02:00
Dusan Klinec
67212a0d2e
PaginatedWithButtons fix, fixes #306 2019-07-08 16:59:13 +02:00
Tomas Susanka
46e4c02602 core: refactor storage
Each namespace now has its own file in apps.common.storage and
storage/__init__ serves as an entry point.

Updates #274.
2019-07-08 15:24:56 +02:00
Tomas Susanka
f04f190a02 core/ui: enlarge backspace button
closes #288
2019-07-02 14:27:03 +02:00
Tomas Susanka
049c5211f3
Restore progress_bar parameter in mnemonic.seed (#297)
Restore progress_bar parameter in mnemonic.seed
2019-07-02 12:14:46 +02:00
Pavol Rusnak
3c40ab8d96
core/src: remove unused num_pad.py 2019-07-02 00:01:31 +02:00
Pavol Rusnak
bf3c257f96
core/messages: don't generate unused messages 2019-07-01 15:52:36 +02:00
Tomas Susanka
f94bc26110 core/mnemonic: return progress_bar parameter 2019-07-01 15:08:23 +02:00
Tomas Susanka
5aa592a69a core/slip39: modify wording on success screen 2019-06-28 12:26:34 +02:00
Tomas Susanka
f78e75bc38 core/slip39: add different wording for BIP/SLIP39 in backup warining 2019-06-28 11:57:02 +02:00
Milan Rossa
9b2167a138
core: asan config 2019-06-27 19:09:55 +02:00
Tomas Susanka
390bef00ca core/slip39: catch exception also when finding out threshold in recovery 2019-06-27 15:42:09 +02:00
Tomas Susanka
6c50b155de core: remove unused variables in Shamir recovery 2019-06-27 14:10:33 +02:00
Tomas Susanka
c205acd3e1 core/slip39: do not populate MnemonicError's message; do not throw exceptions with mnemonic inside the message 2019-06-27 14:00:45 +02:00
Tomas Susanka
4f8022c5cd core/slip39: remove partial persistance in Shamir recovery 2019-06-27 13:47:02 +02:00
Milan Rossa
22f562e275
core: add status to main_exit function 2019-06-26 22:13:21 +02:00
Milan Rossa
9f681a363e
core: git ignore coverage outputs 2019-06-26 22:10:05 +02:00
Roman Zeyde
f3e3ebe1d8 core: unify exception handling at wallet.sign_tx (#255) 2019-06-26 16:53:26 +02:00
Roman Zeyde
99e21f2a96 core: keep BIP143 hashes as bytes (#258)
AFAIU, there is no need to convert them to bytearray.
2019-06-26 16:52:31 +02:00
Tomas Susanka
bc3a4a69be core: style
I'm sorry about this, I'll add a git hook for pre-push I promise.
2019-06-26 13:20:41 +02:00
Tomas Susanka
8f3e648497 core/slip39: remove note on T9 keyboard 2019-06-26 13:18:47 +02:00
Ján Hrnko
0a70f8da1b core/emu: use #!/usr/bin/env in shebang (#263) 2019-06-26 12:16:41 +02:00
Tomas Susanka
582910732a core/slip39: one more typo 2019-06-26 11:40:33 +02:00
Tomas Susanka
2f0a5adac6 core/slip39: hopefully final version of slip39 texts 2019-06-26 11:11:50 +02:00
Tomas Susanka
4fbac3ec63 style 2019-06-26 10:23:32 +02:00
Tomas Susanka
5394d5a5a5 core/slip39: add texts from copy and add success screen in recovery 2019-06-26 06:59:45 +02:00
Jan Pochyla
487cc19750 core/recovery_device: fix dry_run 2019-06-25 18:25:32 +02:00
Tomas Susanka
240440550a style 2019-06-25 16:56:35 +02:00
Tomas Susanka
4124ad3ccd core/slip39: return ProcessError when mnemonic processing fails 2019-06-25 16:49:46 +02:00
Jan Pochyla
a4039f9459 core/management: fix word check, add icons to checklist 2019-06-25 15:47:19 +02:00
Tomas Susanka
10e5ec6135 core/slip39: generate and store slip39 identifier during reset 2019-06-25 14:43:20 +02:00
Jan Pochyla
07de336586 core/pin: do not allow empty pin 2019-06-25 13:23:48 +02:00
Jan Pochyla
4d0fe4d064 core/management: fix various reset/backup/recovery ui bugs 2019-06-25 13:23:48 +02:00
Tomas Susanka
989fb1491f core/slip39: suggest word sooner when a single one is left 2019-06-25 10:35:19 +02:00
Pavol Rusnak
1ec5d091fd core/usb: call wait_random just before returning the data 2019-06-24 19:13:12 +02:00
Tomas Susanka
0daf2bf6b6 core/reset device: remove unnecessary check 2019-06-24 15:25:21 +02:00
Jan Pochyla
03f23fe940 core/mnemonic: cancel homescreen before seed progress animation
If we close the default layout before the animation starts, the workflow manager starts it again after the current workflow ends (and no layout is running).
2019-06-24 13:12:12 +02:00
Tomas Susanka
10f15a6952 core: bump version to 2.1.2 2019-06-24 09:13:18 +02:00
Tomas Susanka
80f8f7900d core: add slip39 support to reset and recovery device 2019-06-23 21:33:58 +02:00
Tomas Susanka
49d6a35249 core: add slip39 keyboard 2019-06-23 21:33:58 +02:00
Roman Zeyde
6fb76f95d1 core: ensure correct pubkeyhash/witprog length in scripts.py (#254) 2019-06-22 16:22:00 +02:00
Pavol Rusnak
e3e2811f7a
core: throw exception classes instead of instances where possible 2019-06-22 02:14:02 +02:00
Pavol Rusnak
312224b7a3
core: fix style 2019-06-22 00:18:31 +02:00
Pavol Rusnak
e432c37df0
core/sdcard: read/write now don't return bool, but rather throw an Exception instead 2019-06-21 22:51:53 +02:00
Pavol Rusnak
4938fb5461
core/tests: rename trezor.io.sdcard test, don't use assert in tests directly 2019-06-20 17:22:44 +02:00
Pavol Rusnak
c8bc21a393
core: bump SD card capacity to 64MB in emulator 2019-06-20 11:52:50 +02:00
Pavol Rusnak
2d8e11e827
core/tests: expand slip39 test_error_location 2019-06-18 23:50:03 +02:00
Andrew Kozlik
84d3723ee9 slip39: Add RS1024 error locator function. 2019-06-18 18:34:29 +02:00
Pavol Rusnak
54d348228f
all: rename TREZOR to Trezor where possible 2019-06-17 20:28:29 +02:00
Tomas Susanka
906013a6d7 ui/mnemonic: small refactor in input's edit 2019-06-13 21:18:23 +02:00
Tomas Susanka
40d55dfe8b ui: remove dead code in mnemonic.py 2019-06-13 17:58:15 +02:00
Jan Pochyla
5bc6bc4635 core: fix request_passphrase notification screen 2019-06-12 16:08:59 +02:00
Jan Pochyla
416226648c core: rotate touch coordinates by default 2019-06-12 15:30:05 +02:00
Roman Zeyde
a4c0645622 core: return exception details in debug mode (#238) 2019-06-11 17:07:18 +02:00
Pavol Rusnak
c1f5432904
Merge pull request #239 from trezor/andrewkozlik/hmac_drbg
Add HMAC DRBG and use it to generate random delays
2019-06-11 16:59:50 +02:00
Roman Zeyde
40bf2c5d2e core: ensure pubkeyhash/scripthash have the correct length (#220) 2019-06-11 14:34:58 +02:00
Andrew Kozlik
c2bdd1cf32 core/common: Change delay_random() to wait_random(). 2019-06-11 11:41:40 +02:00
Andrew Kozlik
f677a0f0db core: Use PRNG when generating random delays. 2019-06-11 11:41:40 +02:00
Andrew Kozlik
1d9e125fd4 crypto/rfc6979: Use the new HMAC DRBG implementation in rfc6979.c. Remove code duplication between rfc6979.c and ecdsa.c. 2019-06-11 11:41:40 +02:00
Andrew Kozlik
0e277dfcb0 core/slip39: Fixed a bug when generating shares with group_threshold = 1. 2019-06-11 11:26:29 +02:00
Pavol Rusnak
0b96b48a8c
core/tools: rename toif_convert to toif_convert.py 2019-06-09 19:17:53 +02:00
Pavol Rusnak
b89134bf3f
core/tools: fix style in toif_convert 2019-06-09 19:04:10 +02:00
Pavol Rusnak
9cb9653c27
core: refactor png2toi/toi2png tools into one toif_convert usable as a library
unify filename extensions
2019-06-09 18:07:07 +02:00
Tomas Susanka
677562d571
Merge pull request #216 from trezor/tsusanka/iss212-monere-tests
ci: download monero tests binary in docker
2019-06-06 10:57:24 +02:00
matejcik
835d5df175
core: reset i2c bus when detected busy
(cherry picked from commit bf79384845)
2019-06-05 14:18:24 +02:00
Pavol Rusnak
e6bb2697c8
core: update ChangeLog 2019-06-05 14:17:38 +02:00
Tomas Susanka
83a5ae3def ci: download monero tests binary in docker
closes #212
2019-06-03 19:44:41 +02:00
Pavol Rusnak
1ee5068128
core/cbor: fix string conversion to work with bytearrays 2019-06-01 11:49:27 +02:00
Andrew Kozlik
31506d81e9
core/cbor: move CBOR from cardano to common
- add support for text strings and boolean values
- add support negative integers and decoding maps
- fix decoding of short strings
- encode maps canonically
- add unit tests for decoding
- sort maps lexicographically by encoded key
2019-06-01 11:38:52 +02:00
Pavol Rusnak
751715dc15
common/defs: add to support.json, regenerate 2019-06-01 08:57:06 +02:00
Roman Zeyde
b538eb3375
core/secp256k1_zkp: refactor API into a Context class
In order to prevent frequent memory allocations, the user can create a single
Context object and re-use it between subsequent cryptographic operations.
2019-05-31 17:29:49 +02:00
Tomas Susanka
6a27328801
xmr: get_address - pagination, integrated address (#201)
xmr: get_address - pagination, integrated address
2019-05-31 15:06:46 +02:00
Tomas Susanka
412efcd35e tests: remove progress bar from curl
It makes CI logs nicer.
2019-05-31 14:44:45 +02:00
Milan Rossa
779ff86214
core: redesign multiprofile support, add profile verbosity 2019-05-31 13:32:49 +02:00
Dusan Klinec
16317f1814
xmr: get_address - pagination, integrated address
- pagination added to show_address
- integrated address supported
- QR code fixed (prefix with monero: as GUI does)
2019-05-31 13:18:11 +02:00
Jan Pochyla
961499fdcf core: fix uppercase ripple address in qr code
Fixes #191
2019-05-28 15:57:04 +02:00
Jan Pochyla
0b03794fee core/tests: disable fading, improve runners 2019-05-28 13:12:46 +02:00
Jan Pochyla
36534325f0 core: revamp the UI subsystem 2019-05-28 13:12:46 +02:00
Jan Pochyla
2f4c123466 core: fix gitignore for older git 2019-05-28 11:17:07 +02:00
Jan Pochyla
09da577fd9 core: use const in trezor.crypto.slip39 2019-05-28 11:17:07 +02:00
Pavol Rusnak
b89d1db0e4
core: update build instructions 2019-05-28 10:24:49 +02:00
Pavol Rusnak
917f5c6534
core: remove bashisms from emu.sh 2019-05-28 10:19:18 +02:00
Pavol Rusnak
a3717c7b6c
core/slip39: use condensed wordlist 2019-05-27 19:39:41 +02:00
Pavol Rusnak
11aac67c82
core: fix last commit 2019-05-27 17:45:06 +02:00
Pavol Rusnak
ae749eedee
core/secp256k1_zkp: don't allocate static buffer 2019-05-27 17:21:14 +02:00
matejcik
6864758f2b docs: fix typo in testing.md 2019-05-27 17:01:49 +02:00
matejcik
32fbdb2abd docs: update testing documentation 2019-05-27 16:38:42 +02:00
matejcik
a0d7a6a667 python: more consistent handling of markers in device_tests
also better behavior when no Trezor device is present
2019-05-27 16:38:35 +02:00
Pavol Rusnak
f7053d96fe
all: remove extraneous whitespace 2019-05-26 22:20:14 +02:00
Pavol Rusnak
daf0d77923
core: remove raspi makefile target
Raspi build is still available when ENV variable is set,
but no need to bloat the Makefile/SConscript file
2019-05-26 21:57:47 +02:00
Pavol Rusnak
07ce935725
core/eos: revert new pubkey format 2019-05-26 11:48:49 +02:00
Pavol Rusnak
5a2c67ccae
core: let's have pytest.ini back 2019-05-25 13:53:58 +02:00
Pavol Rusnak
23202e2479
core: remove pytest.ini because it hides setup.cfg from root 2019-05-25 13:37:34 +02:00
Pavol Rusnak
0765842e7f
root: move pytest markers to setup.cfg 2019-05-25 13:06:28 +02:00
Pavol Rusnak
684862a7f5
common: more TRX cleanup 2019-05-25 12:48:04 +02:00
Roman Zeyde
8a179437b1
core: add custom markers to pytest.ini
Following https://docs.pytest.org/en/latest/mark.html#registering-marks
2019-05-25 12:09:45 +02:00
Tomas Susanka
cc5c8ae7e0
common+python: Revert Ontology support
This reverts commit 402e72e36e.
This reverts commit 21326d3a41.
This reverts commit 18739987ee.
2019-05-25 11:59:35 +02:00
Tomas Susanka
562206d220
tests: remove xfail 2019-05-25 11:59:35 +02:00
Roman Zeyde
d190d906de core/secp256k1-zkp: use ARM assembly for field operations (#176)
Update to latest secp256k1-zkp to allow building on Cortex-M4 devices (https://github.com/ElementsProject/secp256k1-zkp/pull/56).
2019-05-25 11:42:13 +02:00
Jan Pochyla
9586358e44 core: log memory info if TREZOR_LOG_MEMORY env is set 2019-05-24 16:28:11 +02:00
Pavol Rusnak
9460ac425a
core/eos: fix pubkey unit test 2019-05-24 16:18:07 +02:00
Pavol Rusnak
8c1f5c88f7
core: fix style 2019-05-24 16:09:12 +02:00
Jan Pochyla
c2f5174b43
core: optimize memory usage in signing 2019-05-24 16:04:20 +02:00
Pavol Rusnak
a6e51434f2
core/eos: use new pubkey format 2019-05-24 16:01:28 +02:00
Pavol Rusnak
414b33dbfb
core/eos: reduce code duplication 2019-05-24 15:52:57 +02:00
Pavol Rusnak
1583ea62f9
core: serialize signature in EosSignedTx message 2019-05-24 12:49:19 +02:00
Tomas Susanka
279b40bdb7 build: templates
Fixes tests broken by 9e05517872
2019-05-24 11:49:03 +02:00
Pavol Rusnak
5f1586e049
core: regenerate templates 2019-05-23 20:24:44 +02:00
Pavol Rusnak
164336cb56
core: add equality function to mako template too 2019-05-22 22:46:22 +02:00
Pavol Rusnak
0568379f8d
core/tests: disable over_fee_threshold test 2019-05-22 19:29:49 +02:00
Pavol Rusnak
a99ccbc4d2
core: add equality function to coininfo 2019-05-22 16:59:06 +02:00
Pavol Rusnak
b31092a874
core/tests: don't use coins.by_shortcut 2019-05-22 16:46:49 +02:00