Ondřej Vejpustek
6fd4739c5c
feat(core): make random delays use chacha_drbg
2021-05-21 13:42:53 +02:00
Ondřej Vejpustek
e1a5f42c81
feat(core): make chacha_drbg more robust
2021-05-21 13:42:53 +02:00
Ondřej Vejpustek
34f5d508b0
refactor(legacy): move wait_random into separate file
2021-05-21 13:42:53 +02:00
Ondřej Vejpustek
8ee17f69b3
refactor(core): move wait_random and rdi into separate file
2021-05-21 13:42:53 +02:00
Martin Milata
f771dc6f60
ci(nix): switch to stable rust in shell.nix
...
Switch to https://github.com/oxalica/rust-overlay for rustc binaries.
Drop x86_64-unknown-linux-gnu from target list as host is included by
default.
2021-05-21 13:42:10 +02:00
matejcik
bd06b72923
docs(core): document building with Rust
2021-05-21 13:42:10 +02:00
matejcik
e015bc0856
build(core/rust): disable nightly-only features
...
When we need them, we will re-enable.
2021-05-21 13:42:10 +02:00
Pavol Rusnak
155fc7ac67
fix(core): remove tcDisplay from metadata/trezor-ctap2.json
2021-05-19 14:49:54 +02:00
Pavol Rusnak
d358503676
fix(core): remove txAuthSimple from metadata/trezor-ctap2.json
2021-05-19 14:45:02 +02:00
Martin Milata
c54077a714
fix(core): imports needed for T1 startup
...
Now debug build booted on wiped T1 connects to USB and shows square in
top right corner.
2021-05-17 18:03:07 +02:00
Pavol Rusnak
0c46b79ebf
fix(legacy): don't erase firmware and storage in intermediate firmware
...
if the storage has been already initialized
2021-05-13 17:59:39 +02:00
Pavol Rusnak
e09a74a79e
refactor(legacy): rename check_bootloader to check_and_replace_bootloader
2021-05-13 17:59:39 +02:00
Martin Milata
ca5d173071
docs(legacy/firmware): changelog for 1.10.0
2021-05-13 14:35:54 +02:00
Pavol Rusnak
b04d5bd514
fix(crypto): use ck_assert_uint_eq where we compare unsigned values
2021-05-13 14:13:56 +02:00
Pavol Rusnak
709d9e0dcd
fix(ci): update to latest nixpkgs-unstable
2021-05-07 17:11:58 +02:00
matejcik
1e0a23c133
fix(core/paths): make sure containers are copied along with the numbers they contain
2021-05-06 13:14:21 +02:00
matejcik
791ac56f2f
ci: increase hardware test timeouts
2021-05-06 13:14:21 +02:00
matejcik
f05215f4ff
chore(core): add changelog entry
2021-05-06 13:14:21 +02:00
matejcik
2cfd2b0577
docs: document anti-fragmentation measures
2021-05-06 13:14:21 +02:00
matejcik
ed5c357b78
fix(core): properly cache last successful unlock time
2021-05-06 13:14:21 +02:00
matejcik
959cf7d515
fix(core/homescreen): properly redraw when an outside process kills homescreen
...
This happens with FIDO which does not use the normal workflow management
and so `workflow.close_others()` is never called.
2021-05-06 13:14:21 +02:00
matejcik
411a7bb802
fix(core/wire): handle codec errors better
2021-05-06 13:14:21 +02:00
matejcik
231a1fe229
refactor(core): do not cache reverse-mapping of message types in RAM
...
Instead, walk the module for every message.
Also remove the custom wire type registration facility, which is not
used.
2021-05-06 13:14:21 +02:00
matejcik
f1a54f2108
refactor(core): remove more global imports
2021-05-06 13:14:21 +02:00
matejcik
2cb379108c
refactor(core/homescreen): load homescreen image on-demand
2021-05-06 13:14:21 +02:00
matejcik
f61d7fffa8
fix(core): fix top-level imports in apps.common.passphrase
2021-05-06 13:14:21 +02:00
matejcik
93db39ad70
fix(core/wire): drop unused reader, clarify writer usage
2021-05-06 13:14:21 +02:00
matejcik
1c32cbcc1c
ci(core): exclude more things from coverage report
2021-05-06 13:14:21 +02:00
matejcik
28978640b3
ci: simplify HW test definitions
2021-05-06 13:14:21 +02:00
matejcik
2ae8e954bf
chore(tests): update UI test fixtures
2021-05-06 13:14:21 +02:00
matejcik
5ee85b6ed9
refactor(core): improve clarity in main.py
2021-05-06 13:14:21 +02:00
matejcik
25385af159
feat(core/emu.py): erase profile when running emu.py -e
2021-05-06 13:14:21 +02:00
matejcik
bb96cdc4e6
ci: include monero logs in artifacts
2021-05-06 13:14:21 +02:00
matejcik
94521a2065
feat(core): presize some modules to account for their sub-imports
2021-05-06 13:14:21 +02:00
matejcik
5f4240d93c
feat(core): preallocate sys.modules to an appropriate size
2021-05-06 13:14:21 +02:00
matejcik
b5c1b37a56
chore(core/tests): bump heap size for core unit tests
2021-05-06 13:14:21 +02:00
matejcik
c233b796df
fix(tests): avoid race condition when generating UI test screenshots
2021-05-06 13:14:21 +02:00
matejcik
b1e4246b46
refactor(core/webauthn): make sure KEY_AGREEMENT_*KEY is generated once per power-up
...
This is what the spec recommends and it has been the case before
workflow-restarts, when `apps.webauthn.fido2` was imported exactly once
per lifetime.
With workflow-restarts, `fido2` is being imported repeatedly and the
keys regenerated. This does not seem to be a problem per the spec -- a
FIDO workflow will retain the same keys, and non-FIDO workflows can be
seen as unplugs/replugs as far as the FIDO functionality is concerned.
However, regenerating the keys is slow, which is a problem for the
hardware-based unit tests. We can avoid the slowness by returning to the
spec-mandated behavior and generating once per power-up.
2021-05-06 13:14:21 +02:00
matejcik
f6f3c7ffcf
fix(core): prevent flickering when homescreen does not need to redraw
2021-05-06 13:14:21 +02:00
matejcik
5d12b943b3
feat(core): ensure all module names are interned
2021-05-06 13:14:21 +02:00
matejcik
96fd347ca8
fix(core): keep value of experimental_features cached across workflow restarts
2021-05-06 13:14:21 +02:00
matejcik
aaa3ce6117
fix(core/bitcoin): fix CoinJoin authorization with new cache
2021-05-06 13:14:21 +02:00
matejcik
dd655422f1
refactor(core/wire): simplify the message handling loop
2021-05-06 13:14:21 +02:00
matejcik
b387970468
refactor(core/debug): move "wipe with debug build" to boot.py
...
otherwise it gets wiped after every workflow
2021-05-06 13:14:21 +02:00
matejcik
1822aebdb4
feat(core): prefill field_cache in bitcoin app
2021-05-06 13:14:21 +02:00
matejcik
f3db4f2dd3
refactor(core): defragment PathSchema memory usage
2021-05-06 13:14:21 +02:00
matejcik
e5a481ded5
chore(tests): fix deprecation warnings
2021-05-06 13:14:21 +02:00
matejcik
b1ca6ca848
refactor(core/debug): offload debug configuration from apps.debug
2021-05-06 13:14:21 +02:00
matejcik
e859c13d70
refactor(core): limit global imports in key places
...
so that by importing `apps.base`, we don't pull in the whole circus
2021-05-06 13:14:21 +02:00
matejcik
ae0da5e245
feat(python): give the emulator a little more time to respond to ping
2021-05-06 13:14:21 +02:00