David Garske
0b10eb0765
Fix issue with wolfssl submodule update and random.c change keytool failure because of NO_FILESYTEM.
2025-06-24 19:02:49 +02:00
David Garske
9451b47628
Fix for Renesas TSIP key types. Fix for Renesas RX .keystore location in linker script. Fix for wolfBoot as library with Renesas to make sure crypto hardware is initialized and setup. Add forced alignment on additional buffers used for flash read/write.
2025-06-16 19:05:49 +02:00
Brett Nicholas
23cf367c38
review feedback: remove use of unused intermediate variable
2025-05-28 12:24:26 -06:00
Brett Nicholas
7660bf66f8
Add wolfHSM cert chain verification for ECC and RSA
2025-05-27 15:42:59 -06:00
David Garske
8fff9cf3d7
Temp fix: `sign.c:67:5: error: implicit declaration of function '_chsize_s' [-Werror=implicit-function-declaration]`
2025-04-29 11:50:29 +02:00
David Garske
b86d7fc308
Renesas RX minor fixes and documentation updates. Fix for malformed GNUC macro causing clock to not be setup properly when building with RX-GCC compiler. Fix warnings with using `%zu` on older GCC.
2025-04-29 11:50:29 +02:00
Daniele Lacamera
a195efe608
Avoid enforcing alignment on stack for IAR
2025-02-27 16:46:26 +01:00
Daniele Lacamera
afcdefa733
Sign: use manifest header to retrieve base version
2024-12-30 16:36:00 +01:00
Brett Nicholas
638787e296
cast malloc result
2024-12-16 19:12:23 +01:00
Brett Nicholas
0d18b25a2e
fix keytools public key der export to use ml-dsa level passed as env var
2024-12-16 19:12:23 +01:00
Brett Nicholas
ceffc788dd
- support for wolfHSM ML-DSA on simulator and AURIX (DMA only)
...
- consolidate AURIX scripts into wbaurixtool.sh
- documentation updates
2024-12-16 19:12:23 +01:00
David Garske
fae36f2adf
Reserve enough size for the ML-DSA public key in gen.
2024-12-05 14:44:30 -08:00
David Garske
6bed80fbc2
ML-DSA default is level 2. The keytools must be able to support all ML-DSA levels at run-time using `ML_DSA_LEVEL` environment variable. wolfBoot needs to be built with the correct level specified in the .config.
2024-12-05 14:25:43 -08:00
David Garske
4991eabb18
Peer review fixes. Default to ML-DSA level 2.
2024-12-05 13:39:47 -08:00
David Garske
8cdefaae20
Fix to remove ext_XMS artifact from keytools Makefile. Caused mingw readdir error.
2024-12-05 10:45:52 -08:00
David Garske
eddf0bd234
Progress getting the Windows tools to build.
2024-12-05 08:36:02 -08:00
Daniele Lacamera
5ab661677f
keygen: removed compile-time parameters (lms, xmss)
2024-12-03 14:58:49 +01:00
Daniele Lacamera
d5e402ebde
Removing compile-time parameters from keygen
2024-12-03 14:50:54 +01:00
Daniele Lacamera
7132a13545
Complete generic sign
2024-12-03 11:10:16 +01:00
Daniele Lacamera
04d2ecd246
Remove dependency from PQC parameters. Speed up tests.
2024-12-02 18:55:32 +01:00
Daniele Lacamera
05d0e92ecf
Removed forced inflation of header size in `sign`
2024-12-02 14:07:43 +01:00
Daniele Lacamera
d3935774d9
Fix header size in hybrid mode
2024-12-02 12:03:32 +01:00
Daniele Lacamera
75efbd9cfb
Removed all compile-time dependency from keytools
2024-11-26 13:17:00 +01:00
Daniele Lacamera
93866f7376
Use minimum 512B of header with delta updates
2024-11-26 11:04:09 +01:00
Daniele Lacamera
6c8aafe09d
Remove keytools dependency on IMAGE_HEADER_SIZE.
...
- Added getenv() to override the value at runtime
- Removed doc on old python tools
2024-11-26 10:57:06 +01:00
David Garske
bf4c8017dd
Test: adding action to build keytools on windows.
...
* Update key tools VS project to 2022.
* Fix a few warnings in sign.c
* Fix issues with windows already having min/max.
* Fix (workaround) issue with key tools needing WOLFBOOT_SECTOR_SIZE.
2024-11-25 14:38:29 -08:00
Daniele Lacamera
3a69b0e41a
Don't fail if the image contains no base sha
...
+ Added --no-base-sha option to sign
2024-11-22 11:58:17 +01:00
Daniele Lacamera
7347f334b3
Delta update: check sha digest of base image
...
Only allow delta update if the sha digest of the base image matches the
expected value. This is to prevent the delta update from being applied
to an image that is not the expected base image, even if the version
matches.
The mismatch should never happen in real-life scenarios, but it is to check
for false positives during integration, testing and development.
2024-11-21 14:28:40 +01:00
Brett Nicholas
f9cbc57795
review feedback
2024-11-13 09:52:49 +01:00
Brett Nicholas
78e4275f99
Initial wolfHSM support for simulator and AURIX TC3xx
2024-11-13 09:52:49 +01:00
David Garske
aec2809212
Cleanups after hybrid signing PR.
2024-10-31 11:23:52 +01:00
Daniele Lacamera
4743ec06c1
Reviewer comments: fixed typos, less verbose sign
...
Removed some debug leftovers
2024-10-30 13:17:09 +01:00
Daniele Lacamera
cc447ea879
Support for hybrid authentication (2 ciphers)
2024-10-30 13:17:06 +01:00
jordan
b97abd4ace
Add ML-DSA support.
2024-10-14 10:13:52 +02:00
David Garske
48c7c356d5
Merge pull request #490 from danielinux/universal_keystore_padding
...
Keygen to allow multiple keystore types
2024-08-20 17:13:57 -07:00
Daniele Lacamera
837b8bf315
Keygen to allow multiple keystore types
...
when WOLFBOOT_UNIVERSAL_KEYSTORE=1, the keystore.der file should align
all the keys to the maximum slot size (576).
2024-08-20 14:58:50 +02:00
David Garske
9e17315d49
Fixes for building wolfBoot with XMSS/LMS.
2024-08-14 18:06:12 +02:00
David Garske
8a7f5e5baa
Refactor to eliminate PLATFORM_ -> TARGET_. Fix CI errors.
2024-08-14 18:06:12 +02:00
David Garske
3444c47fdb
* Added support for RX65N and RX72N with native Makefile and RX ELF GCC compiler.
...
* Added initialization of the clocks and UART driver.
- wolfBoot uses on chip high speed oscillator (HOCO) at (120MHz RX65N and 240Mhz for RX72N).
* Added RX RSPI and QSPI driver support with external SPI flash
* Improve documentation and fix spelling errors.
* Added .srec (s-record) format support
* Added RX TSIP support for ECDSA (requires https://github.com/wolfSSL/wolfssl/pull/7685 ).
* Allow custom implementation of `get_trailer_at`, `set_trailer_at` and `set_partition_magic` using `CUSTOM_PARTITION_TRAILER`
2024-07-17 06:08:31 +02:00
David Garske
1854383462
Do not enable OTP write protect unless `ENABLE_OTP_WP=1` is passed during make.
2024-07-09 16:18:08 -07:00
David Garske
fbc6f02dea
More documentation updates. Cleanups in the otp-keystore-gen.
2024-07-09 13:26:12 -07:00
David Garske
750c8f6ace
Define a generic max OTP size to appease otp_keystore.h
2024-07-09 10:49:28 -07:00
David Garske
ace95cc2dc
Added instructions for STM32H5 demo to `docs/flash-OTP.md`.
2024-07-09 10:27:52 -07:00
Daniele Lacamera
4f5e168350
Moved keystore.c overwrite check
2024-07-09 18:03:51 +02:00
Daniele Lacamera
46f0d87946
test: revert keystore.c overwrite check
2024-07-09 17:42:58 +02:00
Daniele Lacamera
8f41132ca3
Added more verbosity to key import failure error
2024-07-09 16:31:18 +02:00
Daniele Lacamera
2082bd003c
Avoid to silently overwrite keystore.c
2024-07-09 09:28:40 +02:00
Daniele Lacamera
213315507c
Add command line tool to generate otp.bin
2024-07-09 08:42:33 +02:00
David Garske
918fdc57fd
Added keygen `--der` option to allow ECC private key as ASN.1/DER. Added sign tool ECC key load support for ASN.1/DER private key (default is raw pub x/y, priv d). Refactored sign tool RSA/ECC logic to consolidate code and allow proper "auto" detection for different RSA key sizes.
2024-06-26 20:11:04 +02:00
David Garske
971cbe0ecc
Merge pull request #449 from danielinux/stm32h7_otp
...
Support for OTP Flash as trust anchor for keystore
2024-05-24 16:34:29 -07:00