7ff7965561
Update headers
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-11-03 12:04:52 +00:00
1924adbf99
Fix macro guards for mbedtls_ct_size_mask
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-09-20 18:00:47 +01:00
1d52368e85
build fixes
...
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2023-09-20 16:26:49 +01:00
735d2c99e7
Backport 2.28: Use mbedtls_ct_uint_if() rather than mbedtls_ct_cond_select_sign()
...
Signed-off-by: Tom Cosgrove <tom.cosgrove@arm.com >
2023-05-03 09:50:10 +01:00
1b6c09a62e
Switch to the new code style
...
Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com >
2023-01-11 14:52:35 +01:00
169554c68f
Adapt macro names: MBEDTLS_SSL_SOME_SUITES_USE_MAC->MBEDTLS_SSL_SOME_MODES_USE_MAC
...
Signed-off-by: Przemek Stekiel <przemyslaw.stekiel@mobica.com >
2022-10-06 10:53:20 +02:00
9450dc7b6f
Fix guards for mbedtls_ct_size_mask() and mbedtls_ct_memcpy_if_eq()
...
Both functions are used when MBEDTLS_SSL_SOME_SUITES_USE_MAC is defined not MBEDTLS_SSL_SOME_SUITES_USE_TLS_CBC.
Signed-off-by: Przemek Stekiel <przemyslaw.stekiel@mobica.com >
2022-10-05 11:38:25 +02:00
f211d824d7
Be explicit about constant time bignum functions that must take a 0 or 1 condition value
...
Signed-off-by: Tom Cosgrove <tom.cosgrove@arm.com >
2022-08-18 14:56:00 +01:00
b830028314
Fix uninitialised memory access in constant time functions
...
Fix an issue reported by Coverity whereby some constant time functions
called from the ssl decrypt code could potentially access uninitialised
memory.
Signed-off-by: Paul Elliott <paul.elliott@arm.com >
2022-05-19 18:31:35 +01:00
0e7791ff07
Redo of PR#5345. Fixed spelling and typographical errors found by CodeSpell.
...
Signed-off-by: Shaun Case <warmsocks@gmail.com >
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com >
2022-04-28 18:22:20 +01:00
61156f8a6a
Cap the workaround for mbedtls_mpi_safe_cond_assign on MSVC/ARM64 to MSVC versions prior to 17.1.
...
Signed-off-by: Tautvydas Žilys <tautvydas.zilys@gmail.com >
2022-01-31 13:37:47 -08:00
ea4af4d345
Don't inline mbedtls_mpi_safe_cond_assign on MSVC/ARM64 to avoid a compiler bug.
...
Signed-off-by: Tautvydas Žilys <tautvydas.zilys@gmail.com >
2022-01-26 15:44:47 -08:00
3a755f511f
Add documentation for the functions
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-12-08 16:24:22 +01:00
46ca2f76c4
Unify function parameters
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-12-08 16:22:45 +01:00
df29332d4b
Make mbedtls_ct_uchar_mask_of_range function static
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-12-08 16:20:39 +01:00
3d4dba84b7
Move mbedtls_ct_base64_dec_value function to the constant-time module
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-12-08 16:20:16 +01:00
200708d30a
Move mbedtls_ct_base64_enc_char function to the constant-time module
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-12-08 16:20:04 +01:00
46f79c388d
Move mbedtls_ct_uchar_mask_of_range function to the constant-time module
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-12-08 16:19:41 +01:00
dbe0f892b3
Fix documentation and comments
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:33:19 +01:00
c0ae1cf45a
Rename internal header constant_time.h to constant_time_internal.h
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:33:19 +01:00
18a44949d0
Rename constant-time functions to have mbedtls_ct prefix
...
Rename functions to better suite with the module name.
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:32:01 +01:00
61bf64fbd0
Bind functions' availability for config options
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:04:54 +01:00
e24dea8225
Move mbedtls_cf_memcmp to a new public header
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:04:54 +01:00
2b35880d41
Bind functions' availability for config options
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:04:53 +01:00
4e2de62fef
Remove unused function
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:04:53 +01:00
fd8a42d914
Make functions static
...
These functions are only used as an auxiliary function for constant-time functions.
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:04:53 +01:00
4b4e4d8880
Update documentation and comments
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:04:53 +01:00
91deea7765
Rename and reorder function parameters
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:04:53 +01:00
150bdee126
Use condition for not sensitive data
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:04:53 +01:00
3c38b6e9e1
Move implementation specific comment
...
This comment is about how the functions are implemented, not about their
public interface, so it doesn't belong in the header file.
It applies to everything in constant_time.c so moved there.
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:04:52 +01:00
2c5ed2244b
Make mbedtls_cf_size_mask_lt function static
...
The mbedtls_cf_size_mask_lt is solely used as an auxiliary function
for mbedtls_cf_size_mask_ge.
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:04:52 +01:00
d5a392aa2c
Fix missing includes
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:04:52 +01:00
7e6a1eaf8f
Add documentation for the functions
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:04:52 +01:00
1ffd0ccf02
Unify equality checker functions return value
...
The equality checker functions always return 0 or 1 value,
thus the type of return value can be the same dispite of the
size of the parameters.
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:04:52 +01:00
60febd5d8a
Propagate usage of mask generation functions
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:04:52 +01:00
2f2c0bead3
Unify mask generation functions
...
Generate all-bits 0 or all bits 1 mask from a value instead of from a bit.
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:04:51 +01:00
5e4882498e
Unify function parameters
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:04:51 +01:00
378e7eb5cc
Unify memcmp functions
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:04:51 +01:00
04087dffcd
Typo: Unify indentation of function parameters
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:04:51 +01:00
f52941ef73
Move mbedtls_cf_rsaes_pkcs1_v15_unpadding function to the constant-time module
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:04:51 +01:00
bc3a288b2c
Create mbedtls_cf_size_if function
...
Add a constant-time function with size_t parameter for choosing
between two integer values, like the ?: ternary operator.
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:03:04 +01:00
b10301d2fc
Move mbedtls_mpi_lt_mpi_ct function to the constant-time module
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:02:38 +01:00
58fc8a65ab
Move mbedtls_mpi_safe_cond_swap function to the constant-time module
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:01:08 +01:00
b8caeeed5c
Move mbedtls_mpi_safe_cond_assign function to the constant-time module
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 11:00:14 +01:00
cb4317b723
Move mbedtls_cf_hmac function to the constant-time module
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 10:59:04 +01:00
0f7b9e43e9
Move mbedtls_cf_memcpy_offset function to the constant-time module
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 10:59:04 +01:00
ee06febbb4
Move mbedtls_cf_memcpy_if_eq function to the constant-time module
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 10:59:04 +01:00
7b23c0b46d
Move mbedtls_cf_mem_move_to_left function to the constant-time module
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 10:59:04 +01:00
043192d209
Move mbedtls_cf_mpi_uint_cond_assign function to the constant-time module
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 10:55:56 +01:00
5cec8b44a8
Move mbedtls_cf_cond_select_sign function to the constant-time module
...
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com >
2021-11-11 10:54:20 +01:00