Yanray Wang
690ee81533
Merge remote-tracking branch 'origin/development' into support_cipher_encrypt_only
2023-11-23 10:31:26 +08:00
Yanray Wang
19583e44ed
psa_information: improve code readability
...
Signed-off-by: Yanray Wang <yanray.wang@arm.com>
2023-11-13 17:43:37 +08:00
Yanray Wang
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
Yanray Wang
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
Dave Rodgman
16799db69a
update headers
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com>
2023-11-02 19:47:20 +00:00
Ronald Cron
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
David Horstmann
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
David Horstmann
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
David Horstmann
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
Gilles Peskine
ad7725d95d
Fix type annotation
...
Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2023-08-22 09:59:50 +02:00
Gilles Peskine
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
Gilles Peskine
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
Bence Szépkúti
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
Yanray Wang
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
Tom Cosgrove
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
Agathiyan Bragadeesh
3c963eefe2
Remove trailing whitespace
...
Signed-off-by: Agathiyan Bragadeesh <agathiyan.bragadeesh2@arm.com>
2023-08-03 12:32:09 +01:00
Agathiyan Bragadeesh
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
Agathiyan Bragadeesh
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
Agathiyan Bragadeesh
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
Manuel Pégourié-Gonnard
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
Manuel Pégourié-Gonnard
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
Manuel Pégourié-Gonnard
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
Yanray Wang
15b1358f22
logging_util: rename argument
...
Signed-off-by: Yanray Wang <yanray.wang@arm.com>
2023-07-26 14:48:12 +08:00
Yanray Wang
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
Minos Galanakis
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
Minos Galanakis
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
Minos Galanakis
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
Paul Elliott
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
Paul Elliott
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
Paul Elliott
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
Minos Galanakis
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
Minos Galanakis
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
Minos Galanakis
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
Paul Elliott
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
Paul Elliott
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
Gabor Mezei
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
Gabor Mezei
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
Gabor Mezei
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
Minos Galanakis
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
Gabor Mezei
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
Minos Galanakis
013167ed7f
bignum_common.py: Addressed minor typos
...
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2023-05-11 10:54:44 +01:00
Paul Elliott
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
Gabor Mezei
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
Paul Elliott
b8bd47dd68
Remove unrequired limb size calculation
...
Signed-off-by: Paul Elliott <paul.elliott@arm.com>
2023-05-03 14:16:54 +01:00
Paul Elliott
b7fd1d6044
Correct max canonical multiplication result
...
Signed-off-by: Paul Elliott <paul.elliott@arm.com>
2023-05-03 14:16:48 +01:00
Paul Elliott
16648be171
Add Curve 448 tests
...
Signed-off-by: Paul Elliott <paul.elliott@arm.com>
2023-04-26 22:23:27 +01:00
Minos Galanakis
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
Minos Galanakis
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
Minos Galanakis
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
Gabor Mezei
cec506083b
Fix test case dependency
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com>
2023-04-17 14:56:03 +02:00