| #
5cc9bdd3 |
| 09-Dec-2024 |
Manish V Badarkhe <manish.badarkhe@arm.com> |
Merge "fix(cert-create): load openSSL configuration before PKCS11 operations" into integration
|
| #
785c2c3e |
| 18-Oct-2024 |
Gatien Chevallier <gatien.chevallier@foss.st.com> |
fix(cert-create): load openSSL configuration before PKCS11 operations
On some version of openSSL (1.1.1 or 1.1.0), OPENSSL_init_crypto() called by ENGINE_load_builtin_engines() will not automaticall
fix(cert-create): load openSSL configuration before PKCS11 operations
On some version of openSSL (1.1.1 or 1.1.0), OPENSSL_init_crypto() called by ENGINE_load_builtin_engines() will not automatically load the configuration. Fix this behavior by calling OPENSSL_init_crypto with OPENSSL_INIT_LOAD_CONFIG as a parameter.
Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Change-Id: I2e4c0d646e540d039e9c72fd7814384b17de6dd5
show more ...
|
| #
e2c3611c |
| 02-Sep-2024 |
Olivier Deprez <olivier.deprez@arm.com> |
Merge changes from topic "mb/misc-fixes" into integration
* changes: docs: fix typos in cot binding fix(drtm): return proper values for DRTM get and set error SMCs fix(tools): update the fipto
Merge changes from topic "mb/misc-fixes" into integration
* changes: docs: fix typos in cot binding fix(drtm): return proper values for DRTM get and set error SMCs fix(tools): update the fiptool and certtool to fix POSIX build
show more ...
|
| #
ccbfd01d |
| 19-Jul-2024 |
Manish V Badarkhe <Manish.Badarkhe@arm.com> |
fix(tools): update the fiptool and certtool to fix POSIX build
This patch fixes below issue raised:
https://github.com/TrustedFirmware-A/trusted-firmware-a/issues/8 https://github.com/TrustedFirmwa
fix(tools): update the fiptool and certtool to fix POSIX build
This patch fixes below issue raised:
https://github.com/TrustedFirmware-A/trusted-firmware-a/issues/8 https://github.com/TrustedFirmware-A/trusted-firmware-a/issues/9 https://github.com/TrustedFirmware-A/trusted-firmware-a/issues/10
Change-Id: I521bf7410535ffe49198789ba183cc401b3b88a0 Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
show more ...
|
| #
e88ce988 |
| 24-Apr-2024 |
Manish V Badarkhe <manish.badarkhe@arm.com> |
Merge "fix(cert-create): add guardrails around brainpool usage" into integration
|
| #
c0c280df |
| 10-Apr-2024 |
Donald Chan <donachan@tesla.com> |
fix(cert-create): add guardrails around brainpool usage
OpenSSL has brainpool support only since version 1.1.0, make sure we put a proper guardrail around it.
Change-Id: Ia2ee686904ed80699f77b1da95
fix(cert-create): add guardrails around brainpool usage
OpenSSL has brainpool support only since version 1.1.0, make sure we put a proper guardrail around it.
Change-Id: Ia2ee686904ed80699f77b1da953546ab7538ec37 Signed-off-by: Donald Chan <donachan@tesla.com>
show more ...
|
| #
eab006e5 |
| 23-Oct-2023 |
Sandrine Bailleux <sandrine.bailleux@arm.com> |
Merge "fix(cert-create): fix key loading logic" into integration
|
| #
bb3b0c0b |
| 16-Oct-2023 |
Sandrine Bailleux <sandrine.bailleux@arm.com> |
fix(cert-create): fix key loading logic
When key_load() attempts to load the key from a file and it fails to open this file, the 'err_code' output argument is set to 'KEY_ERR_OPEN' error code. Howev
fix(cert-create): fix key loading logic
When key_load() attempts to load the key from a file and it fails to open this file, the 'err_code' output argument is set to 'KEY_ERR_OPEN' error code. However, it is incorrectly overwritten later on with 'KEY_ERR_NONE' or 'KEY_ERR_LOAD'.
The latter case messes up with the key creation scenario. The 'KEY_ERR_LOAD' error leads the tool to exit, when it should attempt to create the said key file if invoked with the --new-keys/-n option.
Note that, to complicate matters further, which of 'KEY_ERR_OPEN' or 'KEY_ERR_NONE' values is returned by key_load() depends on the version of OpenSSL in use:
- If using v3+, KEY_ERROR_LOAD is returned.
- If using <v3, KEY_ERROR_NONE is returned as a result of the key pair container being initialized by key_new().
This patch fixes this bug and also takes the opportunity to refactor key_load() implementation to (hopefully) make it more straight-forward and easier to reason about.
Fixes: 616b3ce27d9a "feat(cert-create): add pkcs11 engine support" Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com> Reported-by: Wenchen Tan <xtaens@qq.com> Change-Id: Ia78ff442e04c5ff98e6ced8d26becbd817a8ccb7
show more ...
|
| #
7bcd3cf5 |
| 16-Oct-2023 |
Sandrine Bailleux <sandrine.bailleux@arm.com> |
Merge changes from topic "ecdsa_p384" into integration
* changes: refactor(arm): remove ARM_ROTPK_KEY_LEN comparison fix(st): setting default KEY_SIZE docs(cert-create): add key size options f
Merge changes from topic "ecdsa_p384" into integration
* changes: refactor(arm): remove ARM_ROTPK_KEY_LEN comparison fix(st): setting default KEY_SIZE docs(cert-create): add key size options for ecdsa feat(arm): ecdsa p384/p256 full key support feat(tbbr): update PK_DER_LEN for ECDSA P-384 keys feat(auth): ecdsa p384 key support feat(cert-create): ecdsa p384 key support
show more ...
|
| #
c512c89c |
| 15-Aug-2023 |
laurenw-arm <lauren.wehrmeister@arm.com> |
feat(cert-create): ecdsa p384 key support
Adding ECDSA P384 (secp384r1) key creation support through key_bits obtained from KEY_SIZE.
Change-Id: I571251caef20222990bd927cdfb5f35bf2a185d0 Signed-off
feat(cert-create): ecdsa p384 key support
Adding ECDSA P384 (secp384r1) key creation support through key_bits obtained from KEY_SIZE.
Change-Id: I571251caef20222990bd927cdfb5f35bf2a185d0 Signed-off-by: Lauren Wehrmeister <lauren.wehrmeister@arm.com>
show more ...
|
| #
9c447788 |
| 25-Sep-2023 |
Sandrine Bailleux <sandrine.bailleux@arm.com> |
Merge changes If9672598,I219c49d3 into integration
* changes: feat(cert-create): add pkcs11 engine support fix(cert-create): key: Avoid having a temporary value for pkey in key_load
|
| #
616b3ce2 |
| 12-Sep-2023 |
Robin van der Gracht <robin@protonic.nl> |
feat(cert-create): add pkcs11 engine support
Add pkcs11 engine support which allows using keys that are securely stored on a HSM or TPM. To use this feature the user has to supply an RFC 7512 compli
feat(cert-create): add pkcs11 engine support
Add pkcs11 engine support which allows using keys that are securely stored on a HSM or TPM. To use this feature the user has to supply an RFC 7512 compliant PKCS11 URI to a key instead of a file as an argument to one of the key options. This change is fully backwards compatible.
This change makes use of the openssl engine API which is deprecated since openssl 3.0 and will most likely be removed in version 4. So pkcs11 support will have to be updated to the openssl provider API in the near future.
Signed-off-by: Robin van der Gracht <robin@protonic.nl> Change-Id: If96725988ca62c5613ec59123943bf15922f5d1f
show more ...
|
| #
ea6f8452 |
| 19-Sep-2023 |
Robin van der Gracht <robin@protonic.nl> |
fix(cert-create): key: Avoid having a temporary value for pkey in key_load
key->key and k will point to the same if PEM_read_PrivateKey (pem_read_bio_key_decoder) succeeds. There is no need for the
fix(cert-create): key: Avoid having a temporary value for pkey in key_load
key->key and k will point to the same if PEM_read_PrivateKey (pem_read_bio_key_decoder) succeeds. There is no need for the temporary 'k' pointer here.
Signed-off-by: Robin van der Gracht <robin@protonic.nl> Change-Id: I219c49d331eb6dd7200b49b75d47fd66da3d82dd
show more ...
|
| #
493de4df |
| 10-Feb-2023 |
Sandrine Bailleux <sandrine.bailleux@arm.com> |
Merge "fix(cert-create): change WARN to VERBOSE" into integration
|
| #
76a85cfa |
| 08-Feb-2023 |
laurenw-arm <lauren.wehrmeister@arm.com> |
fix(cert-create): change WARN to VERBOSE
SAVE_KEYS is set to '0' by default, causing cert_create to show the 'Key filename not specified' message on each run even though this is perfectly normal. Sh
fix(cert-create): change WARN to VERBOSE
SAVE_KEYS is set to '0' by default, causing cert_create to show the 'Key filename not specified' message on each run even though this is perfectly normal. Show the message only in the VERBOSE log level.
Signed-off-by: Baruch Siach <baruch@tkos.co.il> Change-Id: I472cdec2670055ab0edd99d172f79d01ad575972
show more ...
|
| #
c3170fd8 |
| 14-Nov-2022 |
Manish Pandey <manish.pandey2@arm.com> |
Merge changes from topic "stm32mp1-trusted-boot" into integration
* changes: docs(st): update documentation for TRUSTED_BOARD_BOOT fix(build): ensure that the correct rule is called for tools
Merge changes from topic "stm32mp1-trusted-boot" into integration
* changes: docs(st): update documentation for TRUSTED_BOARD_BOOT fix(build): ensure that the correct rule is called for tools feat(stm32mp1): add the platform specific build for tools fix(stm32mp13-fdts): remove secure status feat(stm32mp1-fdts): add CoT and fuse references for authentication feat(stm32mp1): add a check on TRUSTED_BOARD_BOOT with secure chip feat(stm32mp1): add the decryption support feat(stm32mp1): add the TRUSTED_BOARD_BOOT support feat(stm32mp1): update ROM code API for header v2 management feat(stm32mp1): remove unused function from boot API refactor(stm32mp1): remove authentication using STM32 image mode fix(fconf): fix type error displaying disable_auth feat(tbbr): increase PK_DER_LEN size fix(auth): correct sign-compare warning feat(auth): allow to verify PublicKey with platform format PK feat(cert-create): update for ECDSA brainpoolP256r/t1 support feat(stm32mp1): add RNG initialization in BL2 for STM32MP13 feat(st-crypto): remove BL32 HASH driver usage feat(stm32mp1): add a stm32mp crypto library feat(st-crypto): add STM32 RNG driver feat(st-crypto): add AES decrypt/auth by SAES IP feat(st-crypto): add ECDSA signature check with PKA feat(st-crypto): update HASH for new hardware version used in STM32MP13
show more ...
|
| #
e78ba69e |
| 14-Nov-2022 |
Lionel Debieve <lionel.debieve@foss.st.com> |
feat(cert-create): update for ECDSA brainpoolP256r/t1 support
Updated cert_tool to be able to select brainpool P256r/t1 or NIST prim256v1 curve for certificates signature.
Change-Id: I6e80014469706
feat(cert-create): update for ECDSA brainpoolP256r/t1 support
Updated cert_tool to be able to select brainpool P256r/t1 or NIST prim256v1 curve for certificates signature.
Change-Id: I6e800144697069ea83660053b8ba6e21c229243a Signed-off-by: Nicolas Toromanoff <nicolas.toromanoff@st.com> Signed-off-by: Lionel Debieve <lionel.debieve@foss.st.com>
show more ...
|
| #
797d7446 |
| 11-Nov-2022 |
Manish V Badarkhe <manish.badarkhe@arm.com> |
Merge "refactor(security): add OpenSSL 1.x compatibility" into integration
|
| #
cf2dd17d |
| 25-Oct-2022 |
Juan Pablo Conde <juanpablo.conde@arm.com> |
refactor(security): add OpenSSL 1.x compatibility
When updated to work with OpenSSL 3.0, the host tools lost their compatibility with previous versions (1.x) of OpenSSL. This is mainly due to the fa
refactor(security): add OpenSSL 1.x compatibility
When updated to work with OpenSSL 3.0, the host tools lost their compatibility with previous versions (1.x) of OpenSSL. This is mainly due to the fact that 1.x APIs became deprecated in 3.0 and therefore their use cause compiling errors. In addition, updating for a newer version of OpenSSL meant improving the stability against security threats. However, although version 1.1.1 is now deprecated, it still receives security updates, so it would not imply major security issues to keep compatibility with it too.
This patch adds backwards compatibility with OpenSSL 1.x versions by adding back 1.x API code. It defines a macro USING_OPENSSL3, which will select the appropriate OpenSSL API version depending on the OpenSSL library path chosen (which is determined by the already-existing OPENSSL_DIR variable).
In addition, cleanup items were packed in functions and moved to the proper modules in order to make the code more maintainable and legible.
Signed-off-by: Juan Pablo Conde <juanpablo.conde@arm.com> Change-Id: I8deceb5e419edc73277792861882404790ccd33c
show more ...
|
| #
d8ba3278 |
| 17-May-2022 |
Manish Pandey <manish.pandey2@arm.com> |
Merge "refactor(security): upgrade tools to OpenSSL 3.0" into integration
|
| #
9bc52d33 |
| 02-Mar-2022 |
Juan Pablo Conde <juanpablo.conde@arm.com> |
refactor(security): upgrade tools to OpenSSL 3.0
Host tools cert_tool and encrypt_fw refactored to be fully compatible with OpenSSL v3.0.
Changes were made following the OpenSSL 3.0 migration guide
refactor(security): upgrade tools to OpenSSL 3.0
Host tools cert_tool and encrypt_fw refactored to be fully compatible with OpenSSL v3.0.
Changes were made following the OpenSSL 3.0 migration guide: https://www.openssl.org/docs/man3.0/man7/migration_guide.html In some cases, those changes are straightforward and only a small modification on the types or API calls was needed (e.g.: replacing BN_pseudo_rand() with BN_rand(). Both identical since v1.1.0). The use of low level APIs is now deprecated. In some cases, the new API provides a simplified solution for our goals and therefore the code was simplified accordingly (e.g.: generating RSA keys through EVP_RSA_gen() without the need of handling the exponent). However, in some cases, a more sophisticated approach was necessary, as the use of a context object was required (e.g.: when retrieving the digest value from an SHA file).
Signed-off-by: Juan Pablo Conde <juanpablo.conde@arm.com> Change-Id: I978e8578fe7ab3e71307450ebe7e7812fbcaedb6
show more ...
|
| #
9719e19a |
| 24-Mar-2021 |
Joanna Farley <joanna.farley@arm.com> |
Merge changes I500ddbe9,I9c10dac9,I53bfff85,I06f7594d,I24bff8d4, ... into integration
* changes: nxp lx2160a-aqds: new plat based on soc lx2160a NXP lx2160a-rdb: new plat based on SoC lx2160a
Merge changes I500ddbe9,I9c10dac9,I53bfff85,I06f7594d,I24bff8d4, ... into integration
* changes: nxp lx2160a-aqds: new plat based on soc lx2160a NXP lx2160a-rdb: new plat based on SoC lx2160a nxp lx2162aqds: new plat based on soc lx2160a nxp: errata handling at soc level for lx2160a nxp: make file for loading additional ddr image nxp: adding support of soc lx2160a nxp: deflt hdr files for soc & their platforms nxp: platform files for bl2 and bl31 setup nxp: warm reset support to retain ddr content nxp: nv storage api on platforms nxp: supports two mode of trusted board boot nxp: fip-handler for additional fip_fuse.bin nxp: fip-handler for additional ddr-fip.bin nxp: image loader for loading fip image nxp: svp & sip smc handling nxp: psci platform functions used by lib/psci nxp: helper function used by plat & common code nxp: add data handler used by bl31 nxp: adding the driver.mk file nxp-tool: for creating pbl file from bl2 nxp: adding the smmu driver nxp: cot using nxp internal and mbedtls nxp:driver for crypto h/w accelerator caam nxp:add driver support for sd and emmc nxp:add qspi driver nxp: add flexspi driver support nxp: adding gic apis for nxp soc nxp: gpio driver support nxp: added csu driver nxp: driver pmu for nxp soc nxp: ddr driver enablement for nxp layerscape soc nxp: i2c driver support. NXP: Driver for NXP Security Monitor NXP: SFP driver support for NXP SoC NXP: Interconnect API based on ARM CCN-CCI driver NXP: TZC API to configure ddr region NXP: Timer API added to enable ARM generic timer nxp: add dcfg driver nxp:add console driver for nxp platform tools: add mechanism to allow platform specific image UUID tbbr-cot: conditional definition for the macro tbbr-cot: fix the issue of compiling time define cert_create: updated tool for platform defined certs, keys & extensions tbbr-tools: enable override TRUSTED_KEY_CERT
show more ...
|
| #
b94bf967 |
| 09-Dec-2020 |
Pankaj Gupta <pankaj.gupta@nxp.com> |
cert_create: updated tool for platform defined certs, keys & extensions
Changes to 'tools/cert_create' folder, to include platform defined certificates, keys, and extensions.
NXP SoC lx2160a : base
cert_create: updated tool for platform defined certs, keys & extensions
Changes to 'tools/cert_create' folder, to include platform defined certificates, keys, and extensions.
NXP SoC lx2160a : based platforms requires additional FIP DDR to be loaded before initializing the DDR.
To enable chain of trust on these platforms, FIP DDR image needs to be authenticated, additionally.
Platform specific folder 'tools/nxp/cert_create_helper' is added to support platform specific macros and definitions.
Signed-off-by: Pankaj Gupta <pankaj.gupta@nxp.com> Change-Id: I4752a30a9ff3aa1d403e9babe3a07ba0e6b2bf8f
show more ...
|
| #
22eaa870 |
| 21-Jan-2020 |
Olivier Deprez <olivier.deprez@arm.com> |
Merge "cert_create: Remove some unused header files inclusions" into integration
|
| #
ba1eaabf |
| 07-Jan-2020 |
Sandrine Bailleux <sandrine.bailleux@arm.com> |
cert_create: Remove some unused header files inclusions
The chain of trust definitions are only needed in the part of the code dealing with the TBBR CoT (tbbr/* files).
Change-Id: I6f9a86bba4a2d163
cert_create: Remove some unused header files inclusions
The chain of trust definitions are only needed in the part of the code dealing with the TBBR CoT (tbbr/* files).
Change-Id: I6f9a86bba4a2d16313b6842a3ec85b7c951074bc Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
show more ...
|