00ed38c25b
Python module to parse function declarations from a header file
...
Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com >
2024-01-15 19:03:08 +01:00
690ee81533
Merge remote-tracking branch 'origin/development' into support_cipher_encrypt_only
2023-11-23 10:31:26 +08:00
19583e44ed
psa_information: improve code readability
...
Signed-off-by: Yanray Wang <yanray.wang@arm.com >
2023-11-13 17:43:37 +08:00
70743b02df
psa_information: compile a regex instead of using string directly
...
Compiling a regex improves performance and avoids accidentally
combining it with a string. This commit makes this change.
Signed-off-by: Yanray Wang <yanray.wang@arm.com >
2023-11-09 16:13:55 +08:00
6b190d4f27
psa_information.py: generate dep for AES/ARIA/CAMELLIA ECB test case
...
Signed-off-by: Yanray Wang <yanray.wang@arm.com >
2023-11-03 17:37:22 +08:00
16799db69a
update headers
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-11-02 19:47:20 +00:00
070e8652d5
Adapt to new PSA Crypto repo name
...
Patterns I looked for:
grep -i "psa-crypto"
grep -i "psa.*crypto.*repo"
grep -i "psa.*crypto.*root"
Signed-off-by: Ronald Cron <ronald.cron@arm.com >
2023-10-09 10:26:18 +02:00
2fde99962d
Improve directory coverage in PSA repo detection
...
Check for the 'drivers' and 'programs' directories additionally to the
ones that are already there.
Signed-off-by: David Horstmann <david.horstmann@arm.com >
2023-08-29 09:50:16 +01:00
42f42f4394
Support psa-crypto repo in psa_storage.py
...
Signed-off-by: David Horstmann <david.horstmann@arm.com >
2023-08-24 15:18:18 +01:00
795d8b523d
Modify build_tree.py for the PSA Crypto repo
...
When detecting the root dir, look both for PSA Crypto and Mbed TLS
directories.
Signed-off-by: David Horstmann <david.horstmann@arm.com >
2023-08-24 15:18:18 +01:00
ad7725d95d
Fix type annotation
...
Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com >
2023-08-22 09:59:50 +02:00
c9187c5866
New test suite for the low-level hash interface
...
Some basic test coverage for now:
* Nominal operation.
* Larger output buffer.
* Clone an operation and use it after the original operation stops.
Generate test data automatically. For the time being, only do that for
hashes that Python supports natively. Supporting all algorithms is future
work.
Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com >
2023-08-22 09:59:42 +02:00
fdb722384b
Move PSA information and dependency automation into their own module
...
This will let us use these features from other modules (yet to be created).
Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com >
2023-08-21 18:32:11 +02:00
505dffd5e3
Merge pull request #7937 from yanrayw/code_size_compare_improvement
...
code_size_compare.py: preparation work to show code size changes in PR comment
2023-08-17 20:59:11 +00:00
1998aac349
logging_util: support to tweak loglevel directed to stderr/stdout
...
Previously we set loglevel >= WARNING printed to stderr and
loglevel < WARNING printed to stdout. To be more flexible, we
replace this `WARNING` value with an argument: split_level and leave
`WARNING` as default split_level if not set.
Signed-off-by: Yanray Wang <yanray.wang@arm.com >
2023-08-14 11:22:34 +08:00
2588f8d36d
Merge pull request #8018 from AgathiyanB/add-overflow-test-inputs-bignum
...
[Bignum] Add overflow test inputs for add and add if
2023-08-04 14:00:39 +00:00
3c963eefe2
Remove trailing whitespace
...
Signed-off-by: Agathiyan Bragadeesh <agathiyan.bragadeesh2@arm.com >
2023-08-03 12:32:09 +01:00
ab329c0dfc
Rename ADD_SUB_DEFAULT to ADD_SUB_DATA
...
Signed-off-by: Agathiyan Bragadeesh <agathiyan.bragadeesh2@arm.com >
2023-08-01 17:18:31 +01:00
59003c70ae
Use ADD_SUB_DEFAULT as test input for bignum tests
...
In BignumCoreAddAndAddIf and BignumCoreSub we use the new dedicated
test inputs.
Signed-off-by: Agathiyan Bragadeesh <agathiyan.bragadeesh2@arm.com >
2023-08-01 16:32:36 +01:00
7847eaef20
Add default test cases for add/subtract in bignum
...
Signed-off-by: Agathiyan Bragadeesh <agathiyan.bragadeesh2@arm.com >
2023-08-01 16:30:51 +01:00
182eb1514e
Fix KeyType.can_do() for DH+FFDH
...
Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com >
2023-07-26 09:34:30 +02:00
636d85724a
Shorten DH_FAMILY just like ECC_FAMILY
...
Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com >
2023-07-26 09:32:42 +02:00
afe4b79114
Enable DH in generate_psa_tests.py
...
Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com >
2023-07-26 09:32:42 +02:00
15b1358f22
logging_util: rename argument
...
Signed-off-by: Yanray Wang <yanray.wang@arm.com >
2023-07-26 14:48:12 +08:00
21127f7095
code_size_compare: add logging module and tweak prompt message
...
Signed-off-by: Yanray Wang <yanray.wang@arm.com >
2023-07-24 18:07:12 +08:00
dae4c038f8
ecp.py: Extended EcpP224K1Raw tests for 32/64 bit architectures.
...
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com >
2023-06-27 18:54:53 +01:00
80c4ae893c
bignum_common.py: Added bits_to_limbs
method.
...
This patch introduces a rounding-error-resiliant method to
calculate bits_to_limbs, and is updating `SECP224R1` and
`SECP224K1` to use it.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com >
2023-06-27 16:38:22 +01:00
450abfd922
test_suite_ecp: Added MBEDTLS_ECP_NIST_OPTIM
define guards.
...
This patch updates `ecp_mod_p_generic_raw` and corresponding
curve test methods, that depend on the NIST optimisation
parameter to not run when it is not included.
The following curves are affected:
* SECP192R1
* SECP224R1
* SECP256R1
* SECP384R1
* SECP521R1
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com >
2023-06-16 13:48:47 +01: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
b727042501
Move corner test case into python framework
...
Signed-off-by: Paul Elliott <paul.elliott@arm.com >
2023-06-13 17:42:01 +01:00
2daa374ea8
ecp_curves: Minor refactoring of mbedtls_ecp_mod_p255_raw()
...
* Fixed whitespace issues.
* Renamed variables to align with bignum conventions.
* Updated alignment on test input data.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com >
2023-05-23 09:57:09 +01:00
aada68f1be
ecp.py: Fixed types for arguments()
overrides.
...
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com >
2023-05-23 09:57:09 +01:00
c2c967b1f0
ecp.py: Added tests for mbedtls_ecp_mod_p255_raw
...
This patch introduces the `EcpP255Raw` test class for testing
the curve using the preestablished `ecp_mod_p_generic_raw()`
test. The test's logic has been updated accordingly.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com >
2023-05-23 09:57:09 +01:00
26070670d6
Merge pull request #7565 from gabor-mezei-arm/7263_split_out_Koblitz_raw_functions
...
[Bignum] Split out _raw Koblitz reduction functions
2023-05-22 16:03:17 +01:00
f0806bee66
Merge pull request #7489 from minosgalanakis/ecp/7246_xtrack_core_shift_l
...
[Bignum]: Introduce left shift from prototype
2023-05-16 17:13:19 +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
99453ad9f0
bignum_core.py: Simplified result calculation for BignumCoreShiftL
...
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com >
2023-05-16 15:28:19 +01:00
23b10109bb
Add test cases to test overflow in the Kobltz reduction
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2023-05-12 12:34:12 +02:00
013167ed7f
bignum_common.py: Addressed minor typos
...
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com >
2023-05-11 10:54:44 +01:00
481a6a8edb
Merge pull request #7482 from gabor-mezei-arm/6029_use_core_api_in_ecp_mod_koblitz
...
[Bignum] Use core API in ecp_mod_koblitz()
2023-05-10 17:24:46 +01:00
9bf1aaf385
Fix input parameter alignment in P256K1 test cases
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2023-05-05 16:32:28 +02:00
b8bd47dd68
Remove unrequired limb size calculation
...
Signed-off-by: Paul Elliott <paul.elliott@arm.com >
2023-05-03 14:16:54 +01:00
b7fd1d6044
Correct max canonical multiplication result
...
Signed-off-by: Paul Elliott <paul.elliott@arm.com >
2023-05-03 14:16:48 +01:00
16648be171
Add Curve 448 tests
...
Signed-off-by: Paul Elliott <paul.elliott@arm.com >
2023-04-26 22:23:27 +01:00
c787cf73b3
bignum_core.py: Add "BignumCoreShiftL()"
...
This patch introduces automatic test input generation for
`mpi_core_shift_l()` function.
It also adds two utility functions in bignum_common.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com >
2023-04-26 17:04:20 +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
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