Commit Graph

117 Commits

Author SHA1 Message Date
Martin Pastyřík
589fd84b4b chore(core): remove double check when changing pin
[no changelog]
2026-02-06 16:17:37 +01:00
cepetr
2761e69f8d refactor(core): split rng module into sys/rng and sec/rng_strong
[no changelog]
2026-01-13 11:18:26 +01:00
cepetr
23be710f28 fix(storage): unify number of pin attemps to 10 on devices using Tropic
[no changelog]
2025-11-19 11:27:18 +01:00
Ondřej Vejpustek
f0d80bf9b6 fix(storage,core/embed): fix and improve estimates
[no changelog]
2025-10-29 13:26:35 +01:00
cepetr
dfb72957f1 fix(core): get rid of confidential global vars
[no changelog]
2025-10-29 09:00:15 +01:00
matejcik
6b3098b8c7 chore(storage): add error string to static_assert
otherwise clang 21 complains that not using the string is a C23
extension
2025-10-15 10:14:03 +02:00
tychovrahe
da76bd501d fix(core): fix crash when setting wipe code
[no changelog]
2025-10-10 16:42:58 +02:00
Ondřej Vejpustek
c3e3d85bd5 fix(storage): use rng_fill_buffer_strong()
[no changelog]
2025-10-06 19:30:55 +02:00
Ondřej Vejpustek
915d14d345 feat(core/embed): make pin verification faster on T3W1 2025-10-06 19:30:55 +02:00
Ondřej Vejpustek
67dcf3087e feat(storage,core/embed): use tropic for pin protection 2025-10-06 19:30:55 +02:00
Ondřej Vejpustek
ba5c915822 feat(storage,core/embed): support multiple stretched pins in optiga
[no changelog]
2025-10-06 19:30:55 +02:00
Ondřej Vejpustek
10ec83084a refactor(storage): rename stretch_pin() to mcu_pin_stretch()
[no changelog]
2025-10-06 19:30:55 +02:00
tychovrahe
56755da9ab fix(core): fix integer overflow in storage
[no changelog]
2025-09-30 09:35:16 +02:00
cepetr
6f789233fc refactor(core): originate random number always from sec/rng
[no changelog]
2025-09-24 15:51:02 +02:00
cepetr
6096623322 feat(core): use tropic chip entropy in RNG
[no changelog]
2025-09-24 15:51:02 +02:00
matejcik
87f5f12d64 style: update to black 25 style, silence new flake8 warnings
[no changelog]
2025-09-08 16:27:44 +02:00
cepetr
9951c962c3 refactor(core): remove circular dependencies, new 'storage' feature
[no changelog]
2025-08-12 13:47:39 +02:00
cepetr
681b0d389e feat(core): introduce fail-safe/pq signed boardloader
[no changelog]
2025-07-29 11:37:47 +02:00
cepetr
4754fd8e34 refactor(core): reconfigure mpu directly in the storage
[no changelog]
2025-07-17 13:12:13 +02:00
obrusvit
9a70930388 fix(core): prevent overflow in storage UI callback
- this PR makes sure that the reported `wait` argument (in seconds) does
not underflows to "4294967 seconds"
- this can ocassionaly happen in animated loader

[no changelog]
2025-05-30 17:38:16 +02:00
tychovrahe
6bb3c0cf1d feat(core): update storage to use privileged BHK 2025-05-30 13:12:58 +02:00
Martin Milata
dadff32f39 build(core): use internal model names everywhere
TREZOR_MODEL=T and TREZOR_MODEL=R

no longer work, please use

  TREZOR_MODEL=T2T1 and TREZOR_MODEL=T2B1

[no changelog]
2025-01-13 16:24:35 +01:00
matejcik
ef02c4de5d 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-03 11:02:17 +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