| #
875fdae2 |
| 06-May-2022 |
Sohaib ul Hassan <sohaib.ul.hassan@unikie.com> |
core: libtomcrypt: Fix compilation issue with CFG_CRYPTO_ECC=n
Disabling ECC crypto does not disable the libtomcrypt ECC related declarations, so CFG_CRYPTO_ECC=n gives a compilation error.
Signed-
core: libtomcrypt: Fix compilation issue with CFG_CRYPTO_ECC=n
Disabling ECC crypto does not disable the libtomcrypt ECC related declarations, so CFG_CRYPTO_ECC=n gives a compilation error.
Signed-off-by: Sohaib ul Hassan <sohaib.ul.hassan@unikie.com> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| #
1e149c24 |
| 21-Jan-2021 |
Jerome Forissier <jerome@forissier.org> |
core: ltc: move sm2_kdf() to common core/crypto/sm2-kdf.c
The key derivation function sm2_kdf() is a helper function used by SM2 KEP (Key Exchange Protocol) and PKE (Private Key Encryption). It is c
core: ltc: move sm2_kdf() to common core/crypto/sm2-kdf.c
The key derivation function sm2_kdf() is a helper function used by SM2 KEP (Key Exchange Protocol) and PKE (Private Key Encryption). It is currently implemented in core/lib/libtomcrypt/sm2_kdf.c, next to the SM2 source code based on LibTomCrypt.
In order to provide an MBed TLS implementation of SM2, the helper function shall be outside the LibTomCrypt directory. Move it to core/crypto/sm2-kdf.c.
Signed-off-by: Jerome Forissier <jerome@forissier.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| #
5328dfb1 |
| 02-Nov-2020 |
Cedric Neveux <cedric.neveux@nxp.com> |
core: ltc: change SM2 PKE to use crypto_ecc_[public/keypair]_ops
Change the crypto_acipher_sm2_pke_encrypt and crypto_acipher_sm2_pke_decrypt to use the crypto_ecc_public_ops and crypto_ecc_keypair_
core: ltc: change SM2 PKE to use crypto_ecc_[public/keypair]_ops
Change the crypto_acipher_sm2_pke_encrypt and crypto_acipher_sm2_pke_decrypt to use the crypto_ecc_public_ops and crypto_ecc_keypair_ops methods.
Signed-off-by: Cedric Neveux <cedric.neveux@nxp.com> Acked-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
1fa655fc |
| 07-Oct-2020 |
Cedric Neveux <cedric.neveux@nxp.com> |
core: ltc: set SM2 ECC Keys operations
Change the SM2 DSA sign/verify to be called through the allocated ECC keys operations like ECC sign/verify operations.
Signed-off-by: Cedric Neveux <cedric.ne
core: ltc: set SM2 ECC Keys operations
Change the SM2 DSA sign/verify to be called through the allocated ECC keys operations like ECC sign/verify operations.
Signed-off-by: Cedric Neveux <cedric.neveux@nxp.com> Acked-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
8182792a |
| 23-Apr-2020 |
Khoa Hoang <admin@khoahoang.com> |
core: libtomcrypt: fix return code in convert_ltc_verify_status()
Calling TEE_AsymmetricVerifyDigest() with invalid RSA signature length cause TA to panic. By GP TEE Internal Core specs, TEE_Asymmet
core: libtomcrypt: fix return code in convert_ltc_verify_status()
Calling TEE_AsymmetricVerifyDigest() with invalid RSA signature length cause TA to panic. By GP TEE Internal Core specs, TEE_AsymmetricVerifyDigest() shouldn't cause panic when call with invalid signature length.
Fixes: a3f5668a0cae ("core: ltc: RSA signature verification: fix return code") Signed-off-by: Khoa Hoang <admin@khoahoang.com> Acked-by: Rouven Czerwinski <r.czerwinski@pengutronix.de>
show more ...
|
| #
eee2e03b |
| 14-Jan-2020 |
Jerome Forissier <jerome@forissier.org> |
core: ltc: SM2 PKE: export sm2_kdf()
The Key Derivation Function used by the SM2 Public Key Encryption algorithm is also used by the Key Exchange Protocol. Move it to its file in order to be able to
core: ltc: SM2 PKE: export sm2_kdf()
The Key Derivation Function used by the SM2 Public Key Encryption algorithm is also used by the Key Exchange Protocol. Move it to its file in order to be able to re-use it.
Signed-off-by: Jerome Forissier <jerome@forissier.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
463acb4d |
| 17-Jan-2020 |
Jerome Forissier <jerome@forissier.org> |
core: ltc: acipher_helpers.h: add macro mp_to_unsigned_bin2()
Writing a bignum to a fixed size integer buffer in big endian order is slightly cumbersome, because one has to take into account the act
core: ltc: acipher_helpers.h: add macro mp_to_unsigned_bin2()
Writing a bignum to a fixed size integer buffer in big endian order is slightly cumbersome, because one has to take into account the actual size of the bignum in order to have the zero padding on the left. Let's say I am working with 256-bit numbers:
unsigned char buf[32] = { }; void *n = compute_some_bignum(...);
mp_to_unsigned_bin(n, buf + sizeof(buf) - mp_unsigned_bin_size(n));
This commit introduces mp_to_unsigned_bin2() which can be used like so:
unsigned char buf[32] = { }; void *n = compute_some_bignum(...);
mp_to_unsigned_bin2(n, buf, sizeof(buf));
Signed-off-by: Jerome Forissier <jerome@forissier.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
c0691130 |
| 04-Jan-2020 |
Jerome Forissier <jerome@forissier.org> |
core: ltc: export ECC key helper functions
The static functions ecc_populate_ltc_private_key() and ecc_populate_ltc_public_key() will be useful for other ECC algorithms than the ones currently handl
core: ltc: export ECC key helper functions
The static functions ecc_populate_ltc_private_key() and ecc_populate_ltc_public_key() will be useful for other ECC algorithms than the ones currently handled by core/lib/libtomcrypt/ecc.c, namely: the SM2 family of algorithms. Therefore, export these functions in "acipher_helpers.h".
Signed-off-by: Jerome Forissier <jerome@forissier.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
a1cbb728 |
| 27-Mar-2019 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: LTC use only _CFG_CORE_LTC_ variables
LTC is only taking _CFG_CORE_LTC_ prefixed variables into account for configuration.
_CFG_CORE_LTC_ prefixed variables are assigned based on CFG_CRYPTO_
core: LTC use only _CFG_CORE_LTC_ variables
LTC is only taking _CFG_CORE_LTC_ prefixed variables into account for configuration.
_CFG_CORE_LTC_ prefixed variables are assigned based on CFG_CRYPTO_ and other variables for unchanged LTC configuration.
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
1ac17bb5 |
| 11-Mar-2019 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: ltc: move dsa wrappers to separate file
Moves the DSA wrappers in tee_ltc_provider.c to its own file, dsa.c.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Jens Wikla
core: ltc: move dsa wrappers to separate file
Moves the DSA wrappers in tee_ltc_provider.c to its own file, dsa.c.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|