matejcik
aa718c58a8
feat(core): introduce storage insecure mode
...
reduces the number of PIN iterations and avoids erasing the other
storage bank -- if a test ever overruns, it will probably RSOD out, but
that's unlikely to happen
2024-12-02 11:19:11 +01:00
cepetr
387d98d6e4
refactor(core): get rid of STM32U5 in platform indep code
...
[no changelog]
2024-11-04 14:05:37 +01:00
tychovrahe
57f72d5aa7
fix(core): use secure-unprivileged SAES XOR key for storage encryption
...
[no changelog]
2024-09-24 12:21:53 +02:00
Andrew Kozlik
1016b0c98a
feat(storage): Do not lock freshly initialized storage.
2024-07-09 16:52:50 +02:00
Andrew Kozlik
a4cf0b2c72
feat(core): Show PIN initialization progress when Optiga throttling delays are active
2024-07-09 16:52:50 +02:00
Andrew Kozlik
9420b38a35
feat(core): Account for Optiga throttling delay in PIN countdown.
2024-07-09 16:52:50 +02:00
tychovrahe
e30a0e6231
fix(core): fix storage compilation for U5 models without optiga
...
[no changelog]
2024-07-03 17:27:46 +02:00
Andrew Kozlik
869b6fe6dc
refactor(core): Use remaining PIN attempts in Optiga API.
...
[no changelog]
2024-07-01 18:05:20 +02:00
Andrew Kozlik
fc09379877
refactor(core): Clean up Optiga error handling.
...
[no changelog]
2024-07-01 18:05:20 +02:00
Andrew Kozlik
f393064ce7
feat(core): Improve PIN progress precision.
2024-06-21 18:55:01 +02:00
Andrew Kozlik
509e291118
feat(core): Rework Optiga PIN slot configuration.
2024-06-21 18:55:01 +02:00
Andrew Kozlik
09ed141a0a
test(storage): Update storage tests.
2024-06-21 18:55:01 +02:00
Andrew Kozlik
183e53d3c2
feat(storage): Rework PIN processing and upgrade storage.
2024-06-21 18:55:01 +02:00
Andrew Kozlik
ecf31610b0
refactor(storage): Refactor storage_upgrade().
2024-06-21 18:55:01 +02:00
cepetr
0f1cac9695
refactor(core): optimize assert/fatal_error for reduced flash footprint
...
[no changelog]
2024-06-17 16:57:33 +02:00
Ondřej Vejpustek
18f7820d47
style: fix style according to new clang
...
[no changelog]
2024-05-10 20:06:28 +02:00
tychovrahe
e060ac68c5
feat(core): use U5 HW keys to additionally encrypt storage items
...
[no changelog]
2024-04-08 21:41:30 +02:00
tychovrahe
ed6aa48726
feat(core): use confidential section for confidential and sensitive data
...
[no changelog]
2024-04-05 18:54:30 +02:00
tychovrahe
89147ef493
refactor(core): improve flash api by introducing flash_area_write_data function
...
[no changelog]
2024-04-03 10:18:40 +02:00
matejcik
f60cc75c7c
feat(storage): return enum values instead of strings, so that they are translatable
2024-03-30 12:10:59 +01:00
tychovrahe
70a673fabc
feat(core): use flash bursts for faster flashing
...
[no changelog]
2024-03-19 13:17:25 +01:00
cepetr
4cf781abb2
chore(core, legacy, storage): refactor flash drivers
...
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
8150636a81
feat(core): add basic support for STM32U5
2024-02-29 23:05:56 +01:00
tychovrahe
cd8a0ea690
test(storage): add upgrade test from version 3
...
[no changelog]
2024-02-20 09:37:28 +01:00
tychovrahe
434ed04b7f
feat(storage): implemented more effective pin logs for blockwise storage
...
[no changelog]
2024-02-20 09:37:28 +01:00
tychovrahe
abcbf88e9b
fix(storage): ensure little endian is always used in python implementation
...
[no changelog]
2024-02-20 09:37:28 +01:00
tychovrahe
e0594c9c62
fix(storage): fix app protected check in python implementation
...
[no changelog]
2024-02-20 09:37:28 +01:00
tychovrahe
8147b11345
fix(core): fix quadword-only storage
...
[no changelog]
2024-02-20 09:37:28 +01:00
Andrew Kozlik
440b1304c0
refactor(storage): Split implementations based on FLASH_BIT_ACCESS.
...
[no changelog]
2024-02-20 09:37:28 +01:00
Andrew Kozlik
0c6c1b31ff
refactor(storage): Clean up norcow.c.
...
[no changelog]
2024-02-20 09:37:28 +01:00
Andrew Kozlik
b2f05f187f
feat(storage): Work with generic flash blocks instead of quadwords.
...
[no changelog]
2024-02-20 09:37:28 +01:00
tychovrahe
743ed413f6
feat(core): add support for quad-word only storage
...
[no changelog]
2024-02-20 09:37:28 +01:00
tychovrahe
f8eae3f023
fix(storage/tests): fix norcow active offset initialization, add missing assert in test_set_locked
...
[no changelog]
2024-02-20 09:37:28 +01:00
grdddj
b8ea21d24a
feat(all): implement translations into Trezor
...
Co-authored-by matejcik <ja@matejcik.cz>
2024-02-12 14:49:32 +01:00
tychovrahe
47f8a430e6
refactor(core): remove residual usage of old flash api
...
[no changelog]
2023-11-22 11:45:54 +01:00
Andrew Kozlik
3d0ba4b69f
feat(core): Finish progress for wrong PIN.
...
[no changelog]
2023-10-05 14:41:08 +02:00
Andrew Kozlik
392add3f8e
feat(storage): Synchronize Optiga and MCU PIN counters.
2023-10-04 11:22:46 +02:00
Andrew Kozlik
1fa2929607
feat(core): Distinguish Optiga errors from invalid PIN.
2023-10-04 11:22:46 +02:00
matejcik
3c413ecf02
fix(storage): correctly fail when Optiga operations fail
2023-10-04 11:22:46 +02:00
Andrew Kozlik
dee559f4f9
feat(core): Integrate Optiga into PIN verification.
2023-09-27 17:17:09 +02:00
Andrew Kozlik
91592717da
refactor(storage): Simplify progress callbacks and expose constants.
2023-09-27 17:17:09 +02:00
matejcik
b008367f38
style(storage): apply isort 5
2023-08-16 13:29:51 +02:00
tychovrahe
238e3fd7c1
refactor(core): add abstraction over flash memory layout
...
[no changelog]
2023-07-25 10:25:20 +02:00
Martin Milata
d0601bed40
test(storage): workaround clang error
...
flash.c:55:5: error: initializer element is not a compile-time constant
2023-05-16 19:23:33 +02:00
Andrew Kozlik
01edf3f796
fix(storage): Adapt to changing insecure PRNG to be opt-in.
2023-03-24 11:10:42 +01:00
tychovrahe
5a991f3244
feat(core/rust): bootloader implementation in rust
2023-03-09 16:14:36 +01:00
Andrew Kozlik
1da446a8fb
refactor: Move flash_init to emulator main.
2022-05-03 19:00:04 +02:00
Martin Milata
18c8304339
fix(core): leftover TREZOR_MODEL defines
...
[no changelog]
2022-04-28 16:47:22 +02:00
Pavol Rusnak
8f1d33d5f9
build(core,legacy): remove gcc, use cc instead of gcc
...
for firmware builds we still use arm-none-eabi-gcc via $(PREFIX)gcc
[no changelog]
2022-04-27 15:48:14 +02:00
TychoVrahe
7912a7d0d3
build(core,storage): fix conditional compilation for different Trezor models
...
* build(core,storage) - Fix conditional compilation for different trezor models
* build(core) - Rename MODEL_* macro to TREZOR_MODEL_*, remove the original TREZOR_MODEL macro (replaced by conditional compilation for QSTR generation)
* build(core) - fixed missing TREZOR_MODEL to TREZOR_MODEL_x changes
[no changelog]
2022-04-26 13:47:40 +02:00