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