Daniele Lacamera
9605dd283f
Fixes for test cases using keystore
2022-07-19 15:33:29 +02:00
Daniele Lacamera
513163a77b
Added "ARMORED" check for part id flags mask
2022-07-19 15:32:28 +02:00
Daniele Lacamera
4066c57951
Fixed hash for public key in sha384
2022-07-19 15:32:28 +02:00
Daniele Lacamera
1542a15c90
Keystore: array of public keys generated by keygen
2022-07-19 15:32:28 +02:00
Daniele Lacamera
acfdd1f676
Added support for RSA3072
2022-05-31 12:13:34 +02:00
Daniele Lacamera
e9a3044b93
Fixed regression accessing external partitions
2022-05-20 08:06:07 +02:00
David Garske
f63c323677
Cleanups and restore a few changes.
2022-05-20 08:06:07 +02:00
David Garske
6068a8047c
wolfBoot improvements (from elms):
...
* Add `WOLFBOOT_DUALBOOT` for dynamic fallback
* Refactor header field parsing
* Cleanup compiler warnings and logic extra check
* Option to leave out partition based functions
* Add `WOLFBOOT_FIXED_PARTITIONS` enable using partition enum and related functions
* Wrap all delta update references
* Update raspberry documentation
* EFI refactoring
* Add `keytools_check` target
* Add "library" target
2022-05-20 08:06:07 +02:00
Daniele Lacamera
e755700451
Fix regressions in wolfTPM integration and tests
2022-04-11 18:23:10 +02:00
Daniele Lacamera
98540836e7
Fixed SIGN=NONE with SHA3
2022-04-08 19:03:35 +02:00
Daniele Lacamera
3815067fa0
Fixed SIGN=NONE. Improved tests
2022-04-08 13:04:26 +02:00
Daniele Lacamera
da30333cc5
Fixed regression with HASH=SHA3
2022-04-07 10:05:59 +02:00
Daniele Lacamera
f04889ee29
Added SHA2-384 support for integrity checks
2022-04-06 09:41:37 +02:00
Daniele Lacamera
d06178c3a8
Added new signature algo: ECC384
2022-04-01 12:21:42 -07:00
Daniele Lacamera
7b7282e74d
Added comment as suggested by reviewer.
2022-03-17 12:10:57 +01:00
Daniele Lacamera
0684245187
Added canary vars around signature_ok flag, improved checks
2022-03-15 12:36:24 +01:00
Daniele Lacamera
9ac4a6d365
Armored signature verification back-end
2022-03-14 15:12:36 +01:00
Daniele Lacamera
3f2eec8299
Add github actions for renode tests on docker
2022-03-03 16:40:46 +01:00
Daniele Lacamera
2e7b63eae5
Adding support for ED448 verification
2021-12-13 12:05:37 +01:00
Marco Oliverio
a187442455
support booting EFI application on x86_64 architecture
...
Co-authored-by: Daniele Lacamera <daniele@wolfssl.com>
2021-11-30 18:43:50 +01:00
Daniele Lacamera
39ee01a948
Added roll-back feature via inverse patch
2021-08-17 15:44:34 +02:00
David Garske
d38de3b432
Update copyright year
2021-07-19 07:50:02 -07:00
Daniele Lacamera
f2bab09777
Added support for SIGN=NONE
2021-06-28 13:52:00 +02:00
David Garske
31b785fe7e
Progress with cross-compiling wolfBoot. Will also be creating CCS project.
2021-06-23 09:12:17 +02:00
Elms
1a33885cfb
handle big endianess with header
2021-05-14 09:38:31 +02:00
David Garske
7793433b3a
Updated RSA to use inline operation and disable OAEP padding. This allows removal of the XMALLOC/XFREE SP code. Once PR https://github.com/wolfSSL/wolfssl/pull/3918 is merged we can update submodule.
2021-03-26 16:38:08 +01:00
Dimitar Tomov
7f68f63bcf
Added debug code for testing of the new measured boot feature
...
Signed-off-by: Dimitar Tomov <dimi@wolfssl.com>
2020-12-11 00:37:37 +02:00
Dimitar Tomov
9cf29c1abb
Added note about the place of execution of the TPM measurement
...
Signed-off-by: Dimitar Tomov <dimi@wolfssl.com>
2020-12-10 17:46:53 +02:00
Dimitar Tomov
259008d418
Add user option to select the PCR for measured boot
...
Define name is intentionally using PCR_X naming scheme to allow
multiple stage measured boot in the future.
Signed-off-by: Dimitar Tomov <dimi@wolfssl.com>
2020-12-10 00:22:11 +02:00
Dimitar Tomov
5d877bc912
Added measured boot
...
Signed-off-by: Dimitar Tomov <dimi@wolfssl.com>
2020-12-10 00:15:02 +02:00
Daniele Lacamera
fa7099315c
Fixed check on FW image size in wolfBoot_open_image
2020-11-26 17:37:43 +01:00
David Garske
709ce000a7
Increase stack/heap for Zynq. Add additional Zynq debugging logs for update_ram.c. Pass return code from `wolfBoot_verify_signature` when calling `wolfBoot_verify_authenticity`.
2020-11-12 10:47:32 +01:00
David Garske
0c5b66c39e
Fixes for TPM with RSA.
...
* Requires PR https://github.com/wolfSSL/wolfTPM/pull/101
* Cleanup of software vs. TPM code `wolfBoot_verify_signature` functions (ECC and RSA)
* Adjusted the stack size checks with TPM.
* Added STM32F4 programming/debugging instructions.
* In V=1 mode show the keygen command.
2020-06-23 11:57:09 -07:00
David Garske
e910380889
Add support for using an RSA signature that includes ASN.1 encoded header. On by default, can be disabled using `NO_RSA_SIG_ENCODING`. Added support for signing with encoding using `--rsa2048enc` or `--rsa4096enc`.
2020-06-23 11:39:30 -07:00
Daniele Lacamera
1d24d326b1
Experimental: chacha20 encryption for external partitions
2020-06-16 17:50:55 +02:00
Daniele Lacamera
a100c86c67
Cosmetic (whitespaces)
2020-05-26 11:14:15 +02:00
David Garske
2560bdc6d7
Added TPM RSA verify support. Added support for using software SHA-256 hasing with TPM because its much faster. (Note: to use TPM for hashing define `WOLFBOOT_HASH_TPM`).
2020-05-25 08:28:02 -07:00
David Garske
85b7c4d52f
Xilinx Zynq fixes and cleanups. Updated Xilinx SDK instructions for EL-1 / Hypervisor support. Updated the `zynq.ld` script to use 0x4000000 and only DDR0 region. Updated the example BIF files to use EL-1. Fix for cast warnings to `ext_flash_*` API's.
2020-03-30 07:52:07 -07:00
David Garske
e7446c570f
Fixes for Device Tree (DTS) handling. Updated documentation.
2020-03-06 15:33:41 -08:00
David Garske
2867025ae5
Fixes for handling U-Boot image and DTS. Moved the Xilinx SDK project target settings into target.h.
2020-03-05 15:39:22 -08:00
David Garske
c0b534edd7
wolfBoot Aarch64 support (Xilinx Zynq and Raspberry Pi):
...
* Added Aarch64 boot/startup support
* Added configuration templates for Raspberry Pi 3 and Xilinx ZynqMP UltraScale+
* Added Xilinx Zynq QSPI bare-metal Driver
* Added `NO_XIP` option for full `ext_flash_*` API on all partitions
* Added Xilinx SDK Project Template
* Added support for DTS image partitions
* Added wolfBoot signing tool in Native C (`tools/keytools/sign.c`).
* Added libwolfboot functions `int wolfBoot_fallback_is_possible(void);` and `int wolfBoot_dualboot_candidate(void);`
* Performance improvement to only hash application firmware image once
2020-03-04 12:04:46 -08:00
Daniele Lacamera
d33c5acac8
Added support for SHA3
2020-01-07 20:35:31 +01:00
Daniele Lacamera
c847529698
Added RSA-4096 bit support
2020-01-07 11:32:09 +01:00
Chris Conlon
1f57ad9f39
update copyright to 2020
2020-01-03 15:36:00 -08:00
David Garske
a342b7824f
Minor cleanups.
2019-12-20 10:22:13 -08:00
Daniele Lacamera
2f05d44c95
Fixed SPI defines, fix TPM SHA alignment in header
2019-12-20 19:08:31 +01:00
David Garske
041ca75793
Added support for TPM2.0 module via wolfTPM. Tested with STM32F4. Build using `make SIGN=ECC256 WOLFTPM=1`.
2019-12-17 10:59:11 -08:00
David Garske
6ed1e5ca5f
Fixes for external SPI build options.
2019-12-17 10:38:18 -08:00
David Garske
fae6a974c8
Adds RSA support to wolfBoot using "SIGN=RSA2048". Includes RSA signing script tool in Python and instructions.
2019-12-17 09:44:02 -08:00
Daniele Lacamera
6a5ee45182
minor fix in case of empty external partition
2019-09-19 08:45:11 +02:00