mirror of
https://github.com/Mbed-TLS/mbedtls.git
synced 2025-03-24 01:43:33 +00:00
Test mpi_core_table_lookup for constant timeness
Signed-off-by: Janos Follath <janos.follath@arm.com>
This commit is contained in:
parent
032924f297
commit
133f4e427b
@ -966,12 +966,23 @@ void mpi_core_ct_uint_table_lookup( int bitlen, int window_size )
|
||||
|
||||
for( size_t i = 0; i < count; i++ )
|
||||
{
|
||||
/*
|
||||
* We shouldn't leak anything through timing.
|
||||
* We need to set these in every loop as we need to make the loop
|
||||
* variable public for the loop head and comparison macros make the
|
||||
* rest public automatically.
|
||||
*/
|
||||
TEST_CF_SECRET( &i, sizeof( i ) );
|
||||
TEST_CF_SECRET( dest, limbs * sizeof( mbedtls_mpi_uint ) );
|
||||
TEST_CF_SECRET( table, count * limbs * sizeof( mbedtls_mpi_uint ) );
|
||||
|
||||
memset( dest, 0x00, limbs * sizeof( *dest ) );
|
||||
mbedtls_mpi_core_ct_uint_table_lookup( dest, table, limbs, count, i );
|
||||
|
||||
mbedtls_mpi_uint *current = table + i * limbs;
|
||||
ASSERT_COMPARE( dest, limbs * sizeof( *dest ),
|
||||
current, limbs * sizeof( *current ) );
|
||||
TEST_CF_PUBLIC( &i, sizeof( i ) );
|
||||
}
|
||||
|
||||
exit:
|
||||
|
Loading…
x
Reference in New Issue
Block a user