Raef Coles
|
faf59babe8
|
Make LMS verification return VERIFY_FAILED more
To align with PSA error code rules on when VERIFY_FAILED is returned vs
INVALID_ARGUMENT
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:42 +01:00 |
|
Raef Coles
|
fbd60ec775
|
Change LMS and LMOTS init functions to use memset
Instead of zeroize
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:40 +01:00 |
|
Raef Coles
|
9b0daf60fb
|
Improve LMS private function warning
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:38 +01:00 |
|
Raef Coles
|
f6cb5a4826
|
Fix LMS return statements having incorrect style
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:35 +01:00 |
|
Raef Coles
|
75b4c7790e
|
Fix LMS internal function documentation
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:34 +01:00 |
|
Raef Coles
|
d48f7e90bb
|
Allocate LMS C_RANDOM_VALUE as hash size
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:32 +01:00 |
|
Raef Coles
|
1fb2f32ef5
|
Check LMS offsets are sane at runtime
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:31 +01:00 |
|
Raef Coles
|
e34e3c0e59
|
Remove unneeded cast in LMS calloc
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:30 +01:00 |
|
Raef Coles
|
370cc43630
|
Make LMS public key export part of public key api
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:28 +01:00 |
|
Raef Coles
|
e89488debf
|
Fix bug in LMS public key loading
To avoid using the type before it is parsed from the signature
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:27 +01:00 |
|
Raef Coles
|
3f6cdd7aab
|
Fix LMS not checking RNG function return value
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:24 +01:00 |
|
Raef Coles
|
02cf8234b4
|
Fix ots sig length check in LMS validate function
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:22 +01:00 |
|
Raef Coles
|
f36874a535
|
Fix error type of lms_import_public_key
Was returning an incorrect error when bad public key sizes were input
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:21 +01:00 |
|
Raef Coles
|
dc8fb79e09
|
Simplify LMS private key generation error handling
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:20 +01:00 |
|
Raef Coles
|
be3bdd8240
|
Rename LMS and LMOTS init/free functions
To match convention
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:18 +01:00 |
|
Raef Coles
|
29117d2e4e
|
Update LMS PSA error conversion
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:17 +01:00 |
|
Raef Coles
|
be0c2f9183
|
Update LMS local variable allocation
To use a default failure value, and to avoid a call to
psa_hash_operation_init()
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:15 +01:00 |
|
Raef Coles
|
2ac352a322
|
Make LMS functions args const where required
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:14 +01:00 |
|
Raef Coles
|
f6ddd51bfd
|
Sanitize LMS and LMOTS macros
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:13 +01:00 |
|
Raef Coles
|
5127e859d7
|
Update LMS and LMOTS dependency macros
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:11 +01:00 |
|
Raef Coles
|
56fe20a473
|
Move MBEDTLS_PRIVATE required defines into lms.h
From lmots.h, as it is a private header
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:10 +01:00 |
|
Raef Coles
|
ab300f15e8
|
Move public header content from lmots.h to lms.h
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:08 +01:00 |
|
Raef Coles
|
b4568c5423
|
Disable LMS in PSA crypto client test
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:07 +01:00 |
|
Raef Coles
|
47bccb7e47
|
Disable LMS_PRIVATE in all.sh when LMS is disabled
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:06 +01:00 |
|
Raef Coles
|
a7e03adef5
|
Disable LMS in all.sh when PSA isn't enabled
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:04 +01:00 |
|
Raef Coles
|
0b7da1b787
|
Fix overflow in LMS context init
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:03 +01:00 |
|
Raef Coles
|
98c504373c
|
Update LMS test description
To correct copy-paste error
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:02 +01:00 |
|
Raef Coles
|
57d5328ad5
|
Remove MBEDTLS_LM(OT)S prefix from internal macros
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:29:00 +01:00 |
|
Raef Coles
|
ad05425ab7
|
Update naming of internal LMS functions
To comply with the mbedtls_ requirement
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:28:59 +01:00 |
|
Raef Coles
|
40158e11fc
|
Add LMOTS test hook to header
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:28:58 +01:00 |
|
Raef Coles
|
403558c1c9
|
Fix LMS function documentation
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:28:57 +01:00 |
|
Raef Coles
|
3982040232
|
Fix LMS zeroization using wrong sizeof type
Causing a buffer write out of bounds
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:28:55 +01:00 |
|
Raef Coles
|
98d6e22050
|
Remove doxygen markup from internal LMS functions
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:28:54 +01:00 |
|
Raef Coles
|
40f184c83e
|
Cast LMS allocation sizes to size_t
To prevent implict casting errors on 64-bit platforms
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:28:52 +01:00 |
|
Raef Coles
|
1310ecb389
|
Update LMOTS function documentation
To avoid CI failure
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:28:51 +01:00 |
|
Raef Coles
|
9c9027b1a4
|
Add extra LMS and LMOTS tests
NULL-message and LMOTS signature leak tests
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:28:50 +01:00 |
|
Raef Coles
|
fa24f9d6ea
|
Minor fixes to LMS and LMOTS macros
Update some names, use the correct macro in certain places.
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:28:48 +01:00 |
|
Raef Coles
|
0a967ccf9a
|
Document LMS and LMOTS internal functions
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:28:47 +01:00 |
|
Raef Coles
|
8738a49d0c
|
Fix iterator types in LMOTS
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:28:45 +01:00 |
|
Raef Coles
|
f5919e2997
|
Update LMS/LMOTS tests
Document tests and source of data, use test RNG, pass more parameters
into each test
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:28:43 +01:00 |
|
Raef Coles
|
e0a17610d1
|
Fix LMS/LMOTS if-statement style
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:28:41 +01:00 |
|
Raef Coles
|
9b88ee5d5d
|
Fix LMS and LMOTS coding style violations
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:28:40 +01:00 |
|
Raef Coles
|
366d67d9af
|
Shorted LMS and LMOTS line-lengths
To attempt to comply with the 80-char suggestion
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:28:38 +01:00 |
|
Raef Coles
|
e9479a0264
|
Update LMS API to support multiple parameter sets
Parameterise macros to allow variation of sizes
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:28:36 +01:00 |
|
Raef Coles
|
ab4f87413a
|
Add MBEDTLS_LMS_PRIVATE define
To enable private key operations
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:28:35 +01:00 |
|
Raef Coles
|
ebd35b5b80
|
Rename LMS internal tree-manipulation functions
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:28:31 +01:00 |
|
Raef Coles
|
891c613f31
|
Update LMOTS signature use of temporary variables
Document them properly, and move random value to a temporary variable
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:28:29 +01:00 |
|
Raef Coles
|
0c88d4e447
|
Remove superfluous casts in LMS and LMOTS
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:28:28 +01:00 |
|
Raef Coles
|
f5632d3efc
|
Remove MBEDTLS_PRIVATE usage from LMS and LMOTS
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:28:27 +01:00 |
|
Raef Coles
|
01c71a17b3
|
Update LMS and LMOTS api
Fix function names and parameters. Move macros to be more private.
Update implementation.
Signed-off-by: Raef Coles <raef.coles@arm.com>
|
2022-10-13 14:28:25 +01:00 |
|