16799db69a
update headers
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-11-02 19:47:20 +00:00
2f04582d37
Move MBEDTLS_ECP_WITH_MPI_UINT to mbedtls_config.h
...
There is a precedent for having bigger and less mature options in
mbedtls_config.h (MBEDTLS_USE_PSA_CRYPTO) for an extended period.
Having this option in mbedtls_config.h is simpler and more robust.
Signed-off-by: Janos Follath <janos.follath@arm.com >
2023-07-31 10:57:16 +01:00
82823b2fe8
Fix new bignum tests
...
These tests weren't working, because they use CMake and can't pass
options with CFLAGS directly. This could be mitigated by adding a CMake
option, but using config.py is less invasive and it is what we normally
use for setting build options anyway.
Signed-off-by: Janos Follath <janos.follath@arm.com >
2023-07-31 10:01:47 +01:00
f05ca737da
Update comment
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2023-07-07 12:59:22 +02:00
c97a407dba
Remove value assignment for enum entries
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2023-07-06 10:54:41 +02:00
2a7bcaf8af
Use only MBEDTLS_ECP_WITH_MPI_UINT
to switch between the ecp variants
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2023-07-06 10:37:51 +02:00
1a729dcece
Fix comment
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2023-07-05 16:13:46 +02:00
d6789f1e2e
Used preferred macro definition check
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2023-07-05 16:13:45 +02:00
f4aab6f666
Add comments and remove unneeded defines
...
For `check_names.py` it is enough to appear a macro definition in
a comment to validate it.
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2023-06-30 16:54:55 +02:00
c810707980
Add check for the ecp module variants
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2023-06-30 11:39:21 +02:00
a306d20766
Clone the ecp.c file as ecp_new.c
...
Add macro guard for each file defaults to enable the ecp.c file content.
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2023-06-30 11:38:55 +02:00
1d3e332986
ecp_curves: Updated input argument for mbedtls_ecp_modulus_setup
.
...
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com >
2023-06-16 13:48:47 +01:00
680233dc3f
Merge pull request #7680 from paul-elliott-arm/raw_ecp_mod_p448
...
[Bignum] Split out raw ECP mod p448
2023-06-16 13:46:25 +01:00
a426dc31cc
Merge pull request #7782 from gilles-peskine-arm/mbedtls_ecp_modulus_type-move
...
Move mbedtls_ecp_modulus_type out of the public headers
2023-06-16 11:12:57 +01:00
637c049349
Move mbedtls_ecp_modulus_type out of the public headers
...
This is an internal detail of the ECC arithmetic implementation, only
exposed for the sake of the unit tests
Mbed TLS 3.4.0 was released with the type mbedtls_ecp_modulus_type defined
in a public header, but without Doxygen documentation, and without any
public function or data structure using it. So removing it is not an API
break.
Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com >
2023-06-15 19:07:41 +02:00
a2e48f751b
Split out mbedtls_ecp_mod_p448_raw()
...
Switch testing over to using the generic raw functions.
Signed-off-by: Paul Elliott <paul.elliott@arm.com >
2023-06-15 17:16:38 +01:00
b4df176610
Merge pull request #7637 from paul-elliott-arm/fixed_ecp_mod_p448
...
[Bignum] Fixed width for ecp mod p448
2023-06-15 17:12:02 +01:00
805a0a2d06
Merge pull request #7591 from minosgalanakis/ecp/6028_xtract_fast_reduction_curve25519
...
[Bignum] Implement fast reduction curve25519
2023-06-01 17:43:35 +01:00
ee86100963
Add docs for mbedtls_ecp_mod_p448()
...
Signed-off-by: Paul Elliott <paul.elliott@arm.com >
2023-06-01 10:53:20 +01:00
981d8b6fc7
Merge pull request #7566 from paul-elliott-arm/core_ecp_mod_p448
...
[Bignum] Convert ecp_mod_p448 over to using core functions
2023-05-25 17:11:57 +01:00
3b6bf105d1
Fix missed renames from N to X
...
Signed-off-by: Paul Elliott <paul.elliott@arm.com >
2023-05-23 17:51:52 +01:00
d6beda7af9
ecp_curves: Extended documentation for CURVE25519.
...
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com >
2023-05-23 09:57:09 +01:00
47249fd9ec
ecp_curves: Added documentation for mbedtls_ecp_mod_p255_raw
...
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com >
2023-05-23 09:57:09 +01:00
d0292c2aca
ecp_curves: Refactored mbedtls_ecp_mod_p255
.
...
This patch introduces following methods, as implemented in the
design prototype, and updates them to utilise the _core methods
available for multiplication and addition.
* `mbedtls_ecp_mod_p255()`
* `mbedtls_ecp_mod_p255_raw()`
An entry has been exposed in the `ecp_invasive.h` header
to facilitate testing.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com >
2023-05-22 22:22:32 +01:00
d56e6e008b
Add input parameter length check for the Koblitz reduction
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2023-05-17 17:51:19 +02:00
fa3f74145b
Add documentation
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2023-05-17 17:35:47 +02:00
4fa8334bae
Convert curve 448 to use ecp core functions
...
Signed-off-by: Paul Elliott <paul.elliott@arm.com >
2023-05-16 17:51:48 +01:00
03558b847e
Add _raw
function to P256K1
...
Modified the testing to use the generic fast reduction test function.
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2023-05-16 17:30:03 +02:00
e42bb6294e
Add _raw
function to P224K1
...
Modified the testing to use the generic fast reduction test function.
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2023-05-16 17:30:03 +02:00
dacfe56370
Add _raw
function to P192K1
...
Modified the testing to use the generic fast reduction test function.
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2023-05-16 17:29:57 +02:00
47a3c82118
Enable curve 448 to be tested
...
Signed-off-by: Paul Elliott <paul.elliott@arm.com >
2023-04-26 22:23:13 +01:00
91a618375a
Merge pull request #7427 from minosgalanakis/ecp/7258_ecp_mod_p256K1_add_test_cases
...
ECP: Add Unit Tests for secp256k1
2023-04-26 08:52:24 +01:00
9c2c81f996
ecp_curves: Renamed ecp_mod_p256k1
-> mbedtls_ecp_mod_p256k1
...
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com >
2023-04-25 13:30:59 +01:00
d6751dcd8b
ecp_curves: Added unit-tests for secp256k1
...
This patch introduces basic unit-testing for the `ecp_mod_p256k1()`.
The method is exposed through the ecp_invasive interface, and
the standard testing data is being provided by the python framework.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com >
2023-04-25 13:30:59 +01:00
53c6553deb
Merge pull request #7450 from xkqian/bignumber_ecp_update
...
Update gen_prvkey_mx paras to align with comments and c code
2023-04-24 13:44:39 +01:00
9d80879f90
ecp_curves: Introduced mbedtls_ecp_mod_p224k1()
...
This patch introduces a `MBEDTLS_STATIC_TESTABLE` helper
method which exposes `ecp_mod_p256k1()` to the test-framework
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com >
2023-04-18 14:13:20 +01:00
e5dab975c6
ecp_curves: Added unit-tests for secp224k1
...
This patch introduces basic unit-testing for the `ecp_mod_p224k1()`.
The method is exposed through the ecp_invasive interface, and
the standard testing data is being provided by the python framework.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com >
2023-04-18 14:13:20 +01:00
3c3b94a31b
Merge pull request #7424 from gabor-mezei-arm/7256_unit_tests_for_p192k1
...
Add unit tests for ecp_mod_p192k1()
2023-04-18 12:19:40 +01:00
a089614cdf
Update gen_prvkey_mx paras to align with comments and c code
...
Signed-off-by: Xiaokang Qian <xiaokang.qian@arm.com >
2023-04-18 06:49:55 +00:00
1237a349ed
Use macro guard for function declaration
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2023-04-13 12:48:06 +02:00
83669d910e
Add a testable function for ecp_mod_p192k1
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2023-04-13 12:44:37 +02:00
0c477d32e2
test: include also test_suite_ecp for the coverage analysis
...
Only some test cases are skipped for which ECP_C is mandatory,
but the other ones are included.
Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no >
2023-04-11 11:33:50 +02:00
df9c029dd5
Remove obsolete ecp_fix_negative function
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2023-03-28 18:43:07 +02:00
f9fca53cb4
ecp_curves: Updated ecp_mod_p384_raw documentation
...
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com >
2023-03-23 12:17:17 +00:00
37f4cb6d0e
ecp_curves: Minor rework for p384
...
This patch adjusts formatting, documentation and testing.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com >
2023-03-21 15:46:50 +00:00
6fb105fb2e
ecp_curves: Ported prototypes
...
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com >
2023-03-21 15:41:26 +00:00
d1f16b937e
Add documentation
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2023-03-08 15:26:32 +01:00
ed1acf642c
Apply naming conventions
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2023-03-08 14:09:50 +01:00
5221c04b92
Change the p256_raw fuction to be testable
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2023-03-08 14:09:50 +01:00
ab6ac91a0a
Extract Secp256r1 from the prototype
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2023-03-08 14:09:50 +01:00